Результаты поиска
Почему Git лучше, чем Subversion?
Я использую Subversion уже несколько лет, и после использования SourceSafe мне просто нравится Subversion. В сочетании с TortoiseSVN, я действительно не могу себе представить, как это может быть лучше.
Тем не менее, все больше разработчиков утверждают, что Subversion имеет проблемы и что мы должны перейти к новой разновидности распределенных систем управления версиями, таких как Git .
Как Git улучшает Subversion?
Как сопоставить широту / долготу с искаженной картой?
У меня есть куча пар широта / долгота, которые сопоставляются с известными координатами x / y на карте (географически искаженной).
Тогда у меня есть еще одна пара широта/долгота. Я хочу построить его на карте как можно лучше. Как мне это сделать?
Сначала я решил создать систему линейных уравнений для трех ближайших точек lat/long и вычислить преобразование из них,но это совсем не работает. Поскольку это линейная система,я не могу использовать больше соседних точек.
Вы не можете предположить, что Север вверх: все, что у вас есть, - это существующие сопоставления lat/long->x/y.
Это не проекция Меркатора или что-то в этом роде. Это произвольно искажено для удобства чтения (подумайте о карте метро). Я хочу использовать только ближайшие 5-10 отображений, чтобы искажение на других частях карты не влияло на отображение, которое я пытаюсь вычислить.
Кроме того, вся карта находится в очень маленькой географической области, поэтому нет необходимости беспокоиться о том, что предположения globe--flat-earth достаточно хороши.
Начало работы с системой управления версиями
Мне нужно реализовать контроль версий, даже для того, чтобы просто разрабатывать, что я делаю дома. Я читал о том, как велика Subversion за последние пару лет, и собирался посвятить себя изучению этого на стороне, пока не услышал о Git, являющейся восходящей и грядущей системой контроля версий.
Учитывая ситуацию, должен ли я подождать и посмотреть, кто из них выйдет на первое место? Каковы их относительные преимущества?
Одна из проблем, которую я заметил с Git, заключается в том, что не так много полнофункциональных GUIs, что важно для многих пользователей в моей команде.
Кроме того, не возражал бы против предложений о том, как начать работу с одним или другим. (учебники и т. д.)
Как я могу отменить git сброс --жесткий HEAD~1?
Можно ли отменить изменения, вызванные следующей командой? Если да, то как?
git reset --hard HEAD~1
Переключите названия ветвей в git
Возможно, существует несколько способов задать этот вопрос, поэтому вот описание проблемы. Я работал над Мастером и совершил некоторые вещи, а затем решил, что хочу отложить эту работу. Я сделал резервную копию нескольких коммитов, а затем разветвил их, прежде чем начать свою дерьмовую работу. Практически это работает нормально, просто сейчас у меня есть другая ветвь в качестве моей основной ветви развития. Я задаюсь вопросом, как я мог бы изменить все вокруг, поэтому я снова работаю над Мастером, но у него нет моей мусорной работы, и он сказал, что работа находится на другой ветке.
В некоторых отношениях это может быть asked/solved: Как я могу переименовать свою главную ветвь на что-то другое, а затем переименовать что-то другое в master? Как я могу сделать резервную копию мастера, а затем вызвать все коммиты, которые я сделал в прошлом, чтобы быть на другой ветке?
Спасибо за все (быстрые) ответы! Они все хороши.
Как я могу построить график строк истории кода для git РЕПО?
В принципе, я хочу получить номер lines-of-code в репозитории после каждого коммита.
Единственный (действительно дерьмовый) способ, который я нашел, - это использовать git filter-branch для запуска wc -l * , а сценарий, который запускает git reset --hard на каждом коммите, затем запускает wc -l
Чтобы было немного понятнее, когда инструмент запускается, он выводит строки кода самого первого коммита, затем второго и так далее. Это то, что я хочу, чтобы инструмент вывел (в качестве примера):
me@something:~/$ gitsloc --branch master
10
48
153
450
1734
1542
Я поиграл с библиотекой ruby 'git', но ближе всего я нашел метод .lines() на diff, который, похоже, должен давать добавленные строки (но не дает: он возвращает 0, когда вы удаляете строки, например)
require 'rubygems'
require 'git'
total = 0
g = Git.open(working_dir = '/Users/dbr/Desktop/code_projects/tvdb_api')
last = nil
g.log.each do |cur|
diff = g.diff(last, cur)
total = total + diff.lines
puts total
last = cur
end
Как "unversion" файл в любом из svn и / или git
Это происходит со мной постоянно. Я случайно версирую файл, я не хочу быть версионным (т. е. разработчик/машина конкретных конфигурационных файлов).
Если я зафиксирую этот файл, я испорчу пути на всех других машинах разработчиков-они будут недовольны.
Если я все - таки удалю файл из системы управления версиями, он будет удален с других машин разработчиков-они будут недовольны.
Если я решу никогда не фиксировать файл, у меня всегда будет проверка "dirty" - я несчастлив.
Является ли чистым способом "unversion" файл из контроля версий, что приведет к тому, что никто не будет несчастен?
edit: пытаюсь немного прояснить: я уже отправил файл в репозиторий и хочу только удалить его из управления версиями - я специально не хочу, чтобы он был физически удален из всех, кто делает проверку. Я изначально хотел, чтобы это было проигнорировано.
Ответ: если бы я мог принять второй ответ, это было бы так . Он отвечает на мой вопрос относительно git-принятый ответ-о svn.
Вычислить расстояние между двумя точками широты и долготы? (Формула гаверсинуса )
Как рассчитать расстояние между двумя точками, указанными широтой и долготой?
Для уточнения я хотел бы получить расстояние в километрах; точки используют систему WGS84, и я хотел бы понять относительную точность доступных подходов.
Развертывание подкаталога Git в Capistrano
Мой главный макет ветви выглядит так:
/ <-- верхний уровень
/client <-- исходные файлы desktop client
/server <-- Rails приложение
Все , что я хотел бы сделать, это просто снять каталог /server в моем deploy.rb, но я не могу найти никакого способа сделать это. Каталог /client огромен, поэтому настройка крючка для копирования /server в / не будет работать очень хорошо, ему нужно только снять приложение Rails.
Хороший просмотрщик репозитория Git для Mac
Может ли кто-нибудь порекомендовать хороший просмотрщик репозитория для Git, подобный gitk, который работает на Mac OS X Leopard? (Я не говорю, что gitk не работает)
Конечно, я хотел бы иметь собственное приложение для Mac, но так как я его не нашел, каковы лучшие варианты для gitk?
Я знаю о gitview, но я с нетерпением жду, чтобы оценить как можно больше альтернатив.
http://sourceforge.net/projects/gitview
Git rebase отдельных разветвлений в далёком прошлом?
Наверное я невнимательно читал мануал и гайды, а возможно просто не хочется экспериментировать с неизвестным результатом.
Тем более, что проблемы появились после не до конца удачного rebase и хочется их исправить.
С какими параметрами нужно вызывать git rebase, что бы переписать:
1)
D---E---F---G- master
/ /
-A---B---Cв
-A---B---C'---D'---E---F---G- master
2)
C---D---E- master
/
-A---B---P---R---S- otherв
D---E- master
/
-A---B---C'---P---R---S- other
Рабочая копия GIT c двумя источниками — как разрулить?
В качестве системы контроля версий пользовался всю свою сознательную жизнь (как начал пользоваться, так она и началась :) ) Subversion (aka SVN). Тут подвернулся проект с использованием фреймворка, который хостится на github, а с git я ни разу не работал. Заказчик просит проект хостить тоже на github и даже готов постоянно платить за него. На SVN-то сходу оптимальный вариант развертывания не найду, а тут совсем незнакомая система, а надо быстро. Но это прелюдия.
Собственно вопрос в чём, как грамотно реализовать ситуацию когда один каталог (фреймворк) хостится в одном репозитории целиком, кроме одного подкаталога (приложение), которое хостится в другом репозитории. Нужно, чтобы:
а) в статусе фреймворка (корневого каталога проекта) не мелькали файлы приложения (подкаталога), а фреймворк нормально производил чекаут со своего репозитория (файл .gitignore в корне там присутсвует и тоже должен обновляться нормально, то есть просто занести приложение в него не получится);
б) в статусе приложения мелькали :) его файлы относительно репозитория приложения, в идеале, чтобы в репозитории приложения находился полностью развернутый фреймворк с приложением внутри, но не как внешняя ссылка, а как снимок проекта на момент коммита
Пока в голову приходит только развернуть фреймворк; скопировать всё, кроме информации git, в паралельное дерево; там разворачивать приложение. После обновления фреймворка по чекауту, удалять из копии старый (простой оверврайт не пойдёт, из фреймворка файлы могут пропадать или переименовываться), оставив только приложение; копировать новый сверху поверх приложения; модифицировать приложение к реалиям новой версии и коммитить его в репозиторий приложения. Но как-то мне этот способ не нравится, очень некрасиво. Может есть лучшие варианты?
Git rebase отдельных разветвлений в далёком прошлом?
Наверное я невнимательно читал мануал и гайды, а возможно просто не хочется экспериментировать с неизвестным результатом.
Тем более, что проблемы появились после не до конца удачного rebase и хочется их исправить.
С какими параметрами нужно вызывать git rebase, что бы переписать:
1)
D---E---F---G- master
/ /
-A---B---Cв
-A---B---C'---D'---E---F---G- master
2)
C---D---E- master
/
-A---B---P---R---S- otherв
D---E- master
/
-A---B---C'---P---R---S- other
Рабочая копия GIT c двумя источниками — как разрулить?
В качестве системы контроля версий пользовался всю свою сознательную жизнь (как начал пользоваться, так она и началась :) ) Subversion (aka SVN). Тут подвернулся проект с использованием фреймворка, который хостится на github, а с git я ни разу не работал. Заказчик просит проект хостить тоже на github и даже готов постоянно платить за него. На SVN-то сходу оптимальный вариант развертывания не найду, а тут совсем незнакомая система, а надо быстро. Но это прелюдия.
Собственно вопрос в чём, как грамотно реализовать ситуацию когда один каталог (фреймворк) хостится в одном репозитории целиком, кроме одного подкаталога (приложение), которое хостится в другом репозитории. Нужно, чтобы:
а) в статусе фреймворка (корневого каталога проекта) не мелькали файлы приложения (подкаталога), а фреймворк нормально производил чекаут со своего репозитория (файл .gitignore в корне там присутсвует и тоже должен обновляться нормально, то есть просто занести приложение в него не получится);
б) в статусе приложения мелькали :) его файлы относительно репозитория приложения, в идеале, чтобы в репозитории приложения находился полностью развернутый фреймворк с приложением внутри, но не как внешняя ссылка, а как снимок проекта на момент коммита
Пока в голову приходит только развернуть фреймворк; скопировать всё, кроме информации git, в паралельное дерево; там разворачивать приложение. После обновления фреймворка по чекауту, удалять из копии старый (простой оверврайт не пойдёт, из фреймворка файлы могут пропадать или переименовываться), оставив только приложение; копировать новый сверху поверх приложения; модифицировать приложение к реалиям новой версии и коммитить его в репозиторий приложения. Но как-то мне этот способ не нравится, очень некрасиво. Может есть лучшие варианты?
[TFS + git] как прикрутить git к TFS и ничего не сломать?
Доброго времени суток…
С одной стороны имеется TFS репозиторий, с которым мне надо работать, а с другой я хочу иметь локальный git репозиторий и локально работать с ним так, чтобы при коммите в master изменения накатывались на мою локальную копию с TFS, и можно было бы их коммитить уже на TFS. Ну и чтобы при обновлении в git, он обновлялся с локальной копии файлов, обновленных с TFS.
Так же подойдет любой другой способ прикрутить git к TFS, главное, чтобы ничего не сломать на TFS…
Заранее спасибо…
windows клиенты svn и git
Подскажите лучшие бесплатные клиенты под windows, желательно с интеграцией в проводник/IDE.
Нужно подсадить молодых разрабов на контроль версий.
Как в git обновить сабмодуль?
Есть проект A и есть проект Б, который содержит сабмодуль (проект А с коммитом Х).
Проект А получил пачку коммитов. В проекте Б, в сабмодуле, естественно, ничего не обновилось
Как обновить сабмодуль в проекте Б?
Заставить git ингнорировать всё содержимое директории кроме одного файла?
Как заставить git ингнорировать всё содержимое директории кроме одного файла?
В корне с проектом лежит файл .gitignore, его содержимое:
$ cat .gitignore <br/>
/nbproject<br/>
/rt-content/users<br/>
/rt-content/places<br/>
!/rt-content/users/index.html<br/>
!/rt-content/places/index.html
Нужно игнорировать содержимое директорий /rt-content/users и /rt-content/places, но при этом не игнорировать файлы /rt-content/users/index.html и /rt-content/places/index.html внутри этих директорий. Мой вариант не работает, что я делаю не так, как правильно?
$ cat .gitignore <br/>
/nbproject<br/>
/rt-content/users<br/>
/rt-content/places<br/>
!/rt-content/users/index.html<br/>
!/rt-content/places/index.html
Как синхронизировать версию базы данных MySQL и кода веб-приложения при разработке?
Исходные данные:
1) веб-приложение на php (ну да это не важно на каком языке), лежащее в git (ну или другой CVS)
2) база данных MySQL
3) Весь SQL-код хранится в БД в виде хранимых процедур.
Как поддерживать синхронизацию кода приложения и структуру БД и хранимые процедуры?
С процедурами дело конечно обстоит проще — можно каждую процедуру положить в отдельный файл, который отслеживается в git (ну или другой CVS)
А вот как быть со структурой таблиц? Генерить ручками при каждом изменении ALTER TABLE и класть их в отдельные файлы — трудоемко.
Может есть какие-то утилиты, которые позволяют делать это автоматически, а-ля Oracle Database Version Control?
Хочется иметь возможность при обновлении версии приложения — выполнить один sql-скрипт, который обновит базу данных. Если конечно такое возможно.
Какой HDD выбрать в ноут?
У меня в ноуте помирает (покрывается бэдами) Seagate Momentus 7200.4 500GB, купленный в мае этого года. В этой связи хочу поменять его на что-нибудь подобное, но надежное.
В основном, сейчас выбираю между Hitachi Travelstar 7K500 (HTE725050A9A364) и Western Digital Scorpio Black (WD5000BEKT).
Какой винт посоветовали бы вы? (Напоминаю: наиболее важный критерий — надежность.)
Восстановление не закомиченного бренча в git
Как востановить бренч, столкнулся с такой ситуацией.
Сделал бренч:
git checkout -b feature-xxx develop
В бренче feature-xxx внес множественные изменения в код, не сделав git commit, переключился в develop:
git checkout develop
Git написал что модифицировал измененные файлы в develop из feature-xxx. Этого было мне не нужно, поэтому сделал:
git checkout — ИЗМЕННЕНЫЙ_ФАИЛ
Проверил как работала программа до изменений в feature-xxx. Вернувшись в feature-xxx(git checkout feature-xxx) обнаружил, что изменения пропали.
Два дня работы коту под хвост или можно вернуть изменения?
HDD помер, как бы добыть информацию?
Есть HDD от WD на 500Гб, куплен не так давно — максимум месяца 3 назад. Еще месяц назад появились страные симптомы — через раз после ребута комп отказывался видеть жестянку, передергивание проводов на мат. плате/ж.диске давало положительный эффект и компьютер находил диск. Сейчас же комп либо видит жесткий диск но подвисает на этапе его определения, либо не видит его вообще.
Достал из другого компьютера жесткий от Hitachi — его комп видит отлично, грузится без проблем… всевозможные комбинации настроек вариантов с sata и pata и enhanced с compatible mod'ами не дали должного эффекта в виде загрузки с hitachi для того чтобы утянуть данные с WD. SMART тоже отключал в надежде что из-за него подвисание… Если подключены оба диска, зачастую идет следущее: (прриблизительно)
SATA1: IDE Hard Disk
SATA2: IDE HArd Disk
SATA1:
HITACHI *************** 80Gb
SATA2:
*дальше ничего не пишется — система как бы висит*
_____________________________________________
Есть ли какая-либо возможность (за исключением кармана с usb) в домашних условиях подключить почивший диск, или только вариант конторы, специализирущейся на восстановлении данных с дисков?
UPD #2 And once again, the day is saved thanks to the powerpuff girls Linux, в данном случае Ylmf-сборка, он сумел разглядеть в куче железа оба раздела данных, коии уже лбются на внешних хард =) удивительно, но винда его так и не видит… мистика :/
Всем спасибо за советы =)
UPD #1
в другую машину как раз сейчас воткнул. первый запуск ничего вообще не дал — только биос долго думал, во второй раз биос дал следущее:
Auto-detecting 3rd Master..IDE Hard Disk
Auto-detecting 4th Master..IDE Hard Disk
4th Master: Hitachi HD*** P210A70A, UDMA Mode-5…
Third Master Hard Disk Error, press f1 to resume
Но, опять же, при загрузке в винду эффекта ноль… счас попробую линукс, авось он больше увидит…
При старте системы оба диска «жужжат» и подуают признаки жизни, пятисотка издает звуки, наподобие как в сидироме разгонятеся диск и происходит попытка его чтения, но в следствии повреждений диска считывание не происзодит… после пары таких «заездов» диск признаков жизни не подает — как буд-то на него просто не подается питание…
369   5   14:07, 2nd August, 2020
Переход с hg на git?
Привет, ребята! Я хочу полноценно и полностью перевести некоторые свои проекты с mercurial (Google Code) на git (GitHub).
Я пользовался GC очень долго, но GH меня в итоге впечатлил намного больше.
Но меня интересует две вещи:
1. Перенос всех коммитов по проекту. То есть, чтобы не создавать голый проект, а была вся история с действующими лицами и бранчами
2. Вменяемый плагин для работы с Нетбинсом. Необходимо немного: «Коммит», «Пуш» — оно пушнулось (желательно, автоматический ввод пароля), «Пул». Всё остальное, как диффы, мерджы, и т.п. — крайне желательно. Можно отдельное гуи-приложение для Линукса на Qt, но это не так интересно
но крайне важен именно первый пункт — перенос всей истории правок. Жду советов, как это красиво осуществить. Заранее спасибо.
Git for Windows XP — различные проблемы
Ситуация такая, в отделе несколько разработчиков, у всех Windows, стали использовать Git в разработке. (msysgit for windows). У многих еще XP, а у некоторых 7ка.
В качестве удобного инструмента (чтобы менюшки, окна и минимум console) по управлению Git — взяли TortoiseGit.
У всех у кого Windows 7 — все отлично работает. Коммититься, мержиться и синхронизируется. Проблем нет.
У кого XP — косяки сплошные: у кого кодировка, у кого кириллица не пашет, у кого не хочет синхронизироваться или коммититься. В общем проблемы у каждого свои.
Ставили все с одного файла как msysgit так и TortoiseGit.
Версии (последние которые доступные на сайтах):
TortoiseGit 1.5.8.0
git version 1.7.3.1.msysgit.0
Вопросы к сообществу:
1. Что посоветуете в данной ситуации? Переходить под Linux — не подходит в силу ряда причин.
2. Какие еще есть сборки Git как самого, так и GUI клиента?
3. Hg (Mercurial) или Bazaar — как они себя ведут под Windows XP / 7?
Уровень заряда в продукции Logitech под Linux?
Прошустрил гугл, но так и не сумел найти способа определить уровень заряда в беспроводных устройствах Logitech под Linux. В Win уровень заряда можно увидеть с помощью программы Set Point.
Может быть кто-то встречал решение под Linux?
P.S. С мышью ещё более-менее всё понятно — наглядный уровень заряда выводится на самом устройстве (у меня Logitech MX Revolution). А вот с клавиатурой (Logitech DiNovo Edge) сложнее. Пока уровень не опустится до 15% его определить не удастся. Разве только, если включить/выключить клавиатуру.
Git изолировать branch в другой репозиторий?
Есть локальный git репозиторий, в нем несколько веток, появилась необходимость заморозить разработку одной отдельной ветки, и удалить её из основного репозитория.
Каким образом можно вынести эту ветку в другой репозиторий сохранив при этом всю историю этой ветки в новом репозитории?
Слияние 2 ветвей Git?
Привет всем!
Дано:
1. Репозиторий Git.
2. Проект в котором есть 2 ветви:
• v2 — в ней произведены и закомитеный изменения в 3 файлах. Предположим что в первом это строка 10, во втором 5, в третьем 6.
• master — произведены изменения в этих же 3 файлах в тех-же строках, но при этом они тоже нужны.
3. Конфликт при слиянии между master и v2.
Задача:
1. Каким образом разрешить конфликт?
2. Есть ли способ взять изменения из v2 только из интересуемых строк и файлов и применить их к master
• master — произведены изменения в этих же 3 файлах в тех-же строках, но при этом они тоже нужны.
Подсчет колва написанных или/и измененных строк кода по diff файлу
Господа, всем привет!
1. Подскажите алгоритм или хотя бы принцип оценки колва строк кода измененных или/и написанных, на основе патч файла.
2. Может быть есть какие средства сбора метрик для Git?
Софт для синхронизации и бекапа?
С удивлением обнаружил, что софт на подаренном мне на ДР внешнем диске Western Digital совершенно беден. Программа бэкапа позволяет выбрать типы файлов (документы, музыка ...), а не конкретные директории, а возможность синхронизации вообще не предусмотрена.
Посоветуйте пожалуйста софт дня бэкапа и синхронизации.
Требования к бэкапу у меня такие:
1. Указать сколько версий для каждого файла хранить
2. Возможность восстановления без специалзного софта — чтобы была директория с последними версиями
3. Конечно же возможность указать какие именно фолдеры бэкапировать
Спасибо
403   4   16:12, 26th August, 2020
Что будет, если сделать новый коммит после git reset --soft
У меня было три коммита. Два из них были сделаны ошибочно и я хотел отменить коммиты, но не изменения в рабочей директории.
Я сделал git reset --soft hash_of_commit_1.
После чего сделал новые коммиты, как мне было нужно.
Git log теперь показывает все как надо, то есть commit_1 и далее новые коммиты.
Однако зная хеши тех двух ошибочных коммитов, которые хотел отменить, я могу их посмотреть с помощью git show.
Вопрос: где в истории находятся теперь эти два ошибочных коммита и все ли правильно я сделал?
P.S. И еще у меня почему-то не работает git log --graph. Пишет: «fatal: unrecognized argument: --graph»
Вопрос о работе с GitHub от чайника
Здравствуйте!
Есть такой фреймворк — Kohana. Все в нем хорошо, но кое-что я меняю сразу же после установки. Недавно дошли руки вынести отдельно весь получающийся в итоге модифицированный каркас (обычно когда думаешь, что надо бы это сделать, приложение уже наполовину написано и это становится не самой простой и интересной задачей). Вот внес я все изменения, теперь думаю с общественностью поделиться. С гитхабом (как и с гитом вообще) работал совсем немного (создал репозиторий, залил проект и все), так что вопрос у меня такой: как мне опубликовать измененный фреймворк на гитхабе по-правильному?
Как бороться с ошибкой: couldn't commit memory for cygwin heap?
Привет!
есть код:
<font color="black">awk <font color="#A31515">'<br/>
BEGIN {<br/>
split("\b\b\b\b\b. . . . . \b- \b\b- \b\b- \b\b- \b\b- \b= = = = =", st, " ")<br/>
i=0<br/>
}<br/>
/^[0-9]/ { <br/>
sub(/:.*/, "");<br/>
d=$0;<br/>
next;<br/>
} <br/>
/^&/ {<br/>
sub(/&/, "");<br/>
f=$0<br/>
substr($0, 2, length($0) - 1);<br/>
next;<br/>
}<br/>
/^+/ { a="A"; }<br/>
/^-/ { a="D"; } <br/>
/^[\+-]/ { <br/>
fflush("")<br/>
sub(/[\+-]/, "") <br/>
"echo \"" $0 "\" | md5sum | cut -f1 -d \" \" | sed -e \"s@[32|16]@/sd@g\"" | getline str; close("")<br/>
print ""<br/>
system("echo -ne \"" st[i++] "\" >&2")<br/>
if (i > 16) i=0<br/>
} <br/>
' $gitdiff | \<br/>
sed -e <font color="#A31515">'s/\(filename="[^"]"\)/\1/'</font> <br/>
</font><br/>
<font color="gray">* This source code was highlighted with <a href="http://virtser.net/blog/post/source-code-highlighter.aspx"><font color="gray">Source Code Highlighter</font></a>.</font></font>
есть файл из которого берутся данные
при выполнение вылетает ошибка
C:\Program Files\Git\bin\sh.exe: *** couldn't commit memory for cygwin heap, Win32 error 487
C:\Program Files\Git\bin\sh.exe: *** couldn't commit memory for cygwin heap, Win32 error 487
C:\Program Files\Git\bin\gawk.exe: *** couldn't commit memory for cygwin heap, Win32 error 487
помогите понять почему?
upd: может дело в длине данных?
<font color="black">awk <font color="#A31515">'<br/>
BEGIN {<br/>
split("\b\b\b\b\b. . . . . \b- \b\b- \b\b- \b\b- \b\b- \b= = = = =", st, " ")<br/>
i=0<br/>
}<br/>
/^[0-9]/ { <br/>
sub(/:.*/, "");<br/>
d=$0;<br/>
next;<br/>
} <br/>
/^&/ {<br/>
sub(/&/, "");<br/>
f=$0<br/>
substr($0, 2, length($0) - 1);<br/>
next;<br/>
}<br/>
/^+/ { a="A"; }<br/>
/^-/ { a="D"; } <br/>
/^[\+-]/ { <br/>
fflush("")<br/>
sub(/[\+-]/, "") <br/>
"echo \"" $0 "\" | md5sum | cut -f1 -d \" \" | sed -e \"s@[32|16]@/sd@g\"" | getline str; close("")<br/>
print ""<br/>
system("echo -ne \"" st[i++] "\" >&2")<br/>
if (i > 16) i=0<br/>
} <br/>
' $gitdiff | \<br/>
sed -e <font color="#A31515">'s/\(filename="[^"]"\)/\1/'</font> <br/>
</font><br/>
<font color="gray">* This source code was highlighted with <a href="http://virtser.net/blog/post/source-code-highlighter.aspx"><font color="gray">Source Code Highlighter</font></a>.</font></font>есть файл из которого берутся данные
при выполнение вылетает ошибка
C:\Program Files\Git\bin\sh.exe: *** couldn't commit memory for cygwin heap, Win32 error 487
C:\Program Files\Git\bin\sh.exe: *** couldn't commit memory for cygwin heap, Win32 error 487
C:\Program Files\Git\bin\gawk.exe: *** couldn't commit memory for cygwin heap, Win32 error 487
помогите понять почему?
upd: может дело в длине данных?