The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз распределенной системы управления исходными текстами Git 1.8.1

02.01.2013 14:05

Увидел свет релиз распределенной системы управления исходными текстами Git 1.8.1. Git является одной из самых эффективных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям задним числом используются криптографические методы, также возможна привязка цифровых подписей разработчиков к тегам и коммитам. Из проектов, разрабатываемых с использованием Git, можно отметить ядро Linux, Android, Libreoffice, Systemd, X.Org, Wayland, Mesa, Gstreamer, Wine, Debian, DragonFly BSD, Perl, Eclipse, GNOME, KDE, Qt, Ruby on Rails, PostgreSQL, VideoLAN, PHP.

В анонсе новой версии отмечается, что в одном из будущих значительных выпусков Git будет изменено поведение команды "git push" по умолчанию. В ситуации когда при выполнении "git push" явно не указано что именно помещать в репозиторий ранее использовалась семантика "matching", при которой для обновления выбирались все внешние ветки и теги с именами, совпадающими с локальными. В будущем поведение будет изменено и по умолчанию будет применяться семантика "simple", при которой изменения отправляются только из текущей ветки в ветку с тем же именем, в случае если локальная ветка назначена для интеграции с удалённой веткой. Переопределить новое поведение можно через конфигурационную переменную "push.default".

Кроме того, в одном из будущих выпуском может быть прекращена поддержка команды "git branch --set-upstream", которая объявлена устаревшей из-за того, что не редки случаи указания по ошибке "git branch --set-upstream origin/master", что приводило к созданию локальной ветки "origin/master" для интеграции с текущей загруженной веткой, что явно отличается от того, что ожидал получить пользователь. В качестве замены следует использовать команду "git branch [-u|--set-upstream-to]". Окончание "-to" поможет исключить ошибочную трактовку назначения опции;

Из изменений в Git 1.8.1 можно отметить:

  • Для tcsh и zsh добавлены скрипты для автодополнения опций командной строки git;
  • В директорию contrib/completion добавлен скрипт "git-prompt" для раскраски подсказок в приглашении ввода;
  • Убрано обходное решение для проблемы в утилите less, приводящей к молчаливому завершению работы при изменении размера терминала. Проблема устранена в релизе less 406, выпущенном ещё в 2007 году;
  • При выполнении команды "git checkout" теперь выводится информация о том, насколько значительны расхождения с внешней веткой и приводятся советы как осуществить синхронизацию веток через операции push или pull;
  • При выполнении "git config --get" в случае наличия дублирующихся опций в файле конфигурации, вместо вывода ошибки теперь применяется последнее заданное значение;
  • Добавлена конфигурационная директива "diff.context" для задания числа строк по умолчанию, выводимых в качестве контекста до или после изменённой строки (по умолчанию 3);
  • В команду "git format-patch" добавлена опция "--notes=ref" для указания примечания к коммиту, после вывода строки "---";
  • Команда "git log -p -Sстрока" отныне осуществляет поиск строки после использования фильтра textconv (ранее поиск выполнялся без преобразования блобов);
  • В "git log --grep=pcre" теперь учитываются особенности регулярных выражений Perl, если в конфигурации задана директива "grep.patterntype = perl";
  • В команде "git replace -d объект" объект теперь может интерпретироваться не только по полному имени, но и в форме хэша SHA-1;
  • Команда "git rm $submodule" может быть использована для удаления рабочего дерева субмодуля без потери встроенных в него репозиториев;
  • В команде "git send-email" теперь запрещено указание после "Cc:" лишних строк после email, например, строка "Cc: Stable Kernel stable@k.org # for v3.2 and up" будет обрезана до "Cc: Stable Kernel stable@k.org";
  • В команду "git submodule add" добавлена опция "--name" для добавления нового субмодуля из директории уже содержащей субмодули;
  • В команду "git submodule sync" добавлена опция "--recursive";
  • Добавлена переменная конфигурации "diff.submodule" для задания используемой по умолчанию опций для команды "git diff --submodule";
  • В команду "git symbolic-ref" добавлена опция "-d $symref" для удаления именованных символических ссылок;
  • В "git cvsimport" добавлена поддержка указания часового пояса для каждого автора;
  • В состав включён вспомогательный внешний интерфейс (remote-helper) для взаимодействия с репозиториями Subversion;
  • Добавлен новый remote-helper для Mercurial;
  • Добавлена поддержка сборки в окружении Cygwin с новым набором заголовочных файлов;
  • Обновлён код поддержки сборки с использованием инструментария MinGW;
  • Произведена оптимизация логики генерации начального списка доступных ссылок из "upload-pack", выполняемая на другой стороне соединения при запуске "git fetch";
  • Проведена оптимизация логики поиска набора атрибутов, соответствующих указанному пути;
  • Для ускорения команд "git diff-index" и "git update-index" задействован предварительно загружаемый индекс, что позволило повысить скорость работы на системах с медленным вызовом функции stat (в том числе в Linux).


  1. Главная ссылка к новости (https://lkml.org/lkml/2012/12/...)
  2. OpenNews: Представлена открытая платформа для организации совместной разработки GitLab 4.0
  3. OpenNews: GitHub опубликовал статистику за 2012 год
  4. OpenNews: Представлен Seafile, Dropbox-подобный сервер хранения на основе технологий Git
  5. OpenNews: Разработчики LLVM при голосовании отдали предпочтение GIT
  6. OpenNews: Релиз распределенной системы управления исходными текстами Git 1.8.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/35739-git
Ключевые слова: git
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (91) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, ВовкаОсиист (ok), 17:17, 02/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –10 +/
    Докачку уже запилили? Если нет, то не нужно.
     
  • 1.5, ALex_hha (??), 19:24, 02/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    А чем оно лучше svn?
     
     
  • 2.6, daotonpyh_eht_ot_yrolg_lla (?), 19:30, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а что такое svn?
     
     
  • 3.8, Аноним (-), 20:34, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > а что такое svn?

    Древняя система контроля версий, централизованной эпохи еще.

     
  • 2.7, Аноним (-), 20:33, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > А чем оно лучше svn?

    Практически всем. Наиболее - тем что оно распределенное и потому может хранить всю историю изменений локально. Так что не надо дрюкать какой-то там ремотный сервер чтобы посмотреть что было пять ревизий назад и откатить вон тот патч, вызвавший проблемы. По поводу чего можно покодить хоть там где интернетом и не пахло, чувствуя себя белым человеком при этом. Да и зависимость от центрального сервака - зло.

     
     
  • 3.10, Crazy Alex (??), 21:04, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Зависимость от центрального сервака во многих случаях - добро. Особенно когда это корпоративное использование персонал не особо квалифицирован в управлении версиями. Гит в таких ситуациях нужно обкладывать горой костылей, чтобы юзверь не начудил.

    Но это, пожалуй, единственный вариант, когда SVN предпочтительнее.

     
     
  • 4.12, ALex_hha (??), 21:20, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Но это, пожалуй, единственный вариант, когда SVN предпочтительнее.

    ошибаетесь, поработайте с репозитарием 100Gb+ и тогда мы с вами поговорим, что удобнее, а что нет ;)

     
     
  • 5.17, Crazy Alex (??), 22:37, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Да, с такими работать как-то не приходилось. А в чём там SVN выигрыш даёт? Только в том,что локально меньше держать?
     
     
  • 6.22, daotonpyh_eht_ot_yrolg_lla (?), 23:08, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    причём тут выигрыш? SVN даёт только проигрыш
     
     
  • 7.23, Crazy Alex (??), 23:22, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы можете толком ответить, что там на таких размерах репа происходит? Ну и заодно - что лежит в версионнике - большие или малые файлы. Что в основном бинари на таких обьъемах - понятно.
     
     
  • 8.85, тот ещё (?), 13:18, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Там происходит полная ж См репозиторий boost а, например Там ограничения VCS ... текст свёрнут, показать
     
  • 5.21, daotonpyh_eht_ot_yrolg_lla (?), 23:06, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    не обязатаельно так хардкорно. Достаточно на сотни мегов, но вне офиса, а где-нибдуь из дома или во время командировки
     
  • 5.30, Аноним (-), 00:11, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > ошибаетесь, поработайте с репозитарием 100Gb+

    А зачем версионировать прон? Не понимаю.

     
     
  • 6.34, Crazy Alex (??), 00:44, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    В рекламном агентстве, допустим - вполне реальный размер. Кладётся всё в исходниках, с кучей слоёв, в максимальном разрешении, весит соответственно. ОДин PSD на 100 метров - вполне нормально. Другое дело, что в один репозиторий всё это можно и не пихать, а назначить по репе дизайнеру или заказчику или кампании. Но это уже вопрос местной специфики.
     
     
  • 7.41, all_glory_to_the_hypnotoad (ok), 02:59, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    и вообще можно в реп не пихать, а настроить посуточное архивирование всего контента некоторых директорий с рабочих машин. Там же на самом деле не нужен версионник, в 9 из 10 паттернов работы с данными в вашем случае обычная бэкапилка делает всё на порядки проще, удобнее и быстрее (BackupPC, например).

    остаётся 1 случай из 10, где бэкап раз в сутки не подходит и конечный сотрудник знает, понимает и умеет делать контрольные точки в своей работе внутри дня.

    если админ для первого случая ставит SVN, или любую другую VCS, то он конченный идиот.

     
     
  • 8.48, Crazy Alex (??), 04:59, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да, я где-то в обсуждении такой пример приводил Просто бэкап на FTP Правда ... большой текст свёрнут, показать
     
  • 7.42, all_glory_to_the_hypnotoad (ok), 02:59, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    1
     
  • 4.26, Аноним (-), 23:37, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Особенно когда 1 Упала сеть 2 Упал сервак и нет бэкапа 3 Упал интернет у р... большой текст свёрнут, показать
     
     
  • 5.35, Crazy Alex (??), 00:53, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Так есть случаи, когда ремотных разработчиков просто нет Что даёт много большую... большой текст свёрнут, показать
     

  • 1.11, ALex_hha (??), 21:19, 02/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > а что такое svn?

    google вроде не забанили еще.

    > Древняя система контроля версий, централизованной эпохи еще.

    т.е. вы предлагаете каждому человеку, скачивать 1 Тб репозитарий, чтобы удобно поработать дома? А чо, закинул на флеху и пошел работать домой, удобно ж :D

    > Гит в таких ситуациях нужно обкладывать горой костылей, чтобы юзверь не начудил.

    собственно на это и намекал, что для каждой задачи свои методы. А то пихают git во все щели и с пеной у рта кричат, он лучше всех!

    > Да и зависимость от центрального сервака - зло.

    да как сказать, только не надо говорить, что сервер может поломаться, а интернет перестать работать :D

     
     
  • 2.13, Аноним (-), 21:36, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > т.е. вы предлагаете каждому человеку, скачивать 1 Тб репозитарий, чтобы удобно поработать дома? А чо, закинул на флеху и пошел работать домой, удобно ж :D

    Предлагаю заюзать sshfs

     
  • 2.15, GentooBoy (ok), 21:44, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > т.е. вы предлагаете каждому человеку, скачивать 1 Тб репозитарий, чтобы удобно поработать дома? А чо, закинул на флеху и пошел работать домой, удобно ж :D

    для особо одаренных git clone --depth 1

     
     
  • 3.46, Гентушник (ok), 03:27, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если использовать --depth то репозиторий становится инвалидом, там даже git push не сделаешь.
     
  • 2.19, Michael Shigorin (ok), 23:00, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > да как сказать, только не надо говорить, что сервер может поломаться,
    > а интернет перестать работать :D

    Может и поломаться, и упасть вместе с бэкапами (некоторые держат их там же), и ещё много чего.  Также смею доложить, что некоторым работать в офлайне получается куда продуктивнее по причине отсутствия лишних прерываний.

    Можно ещё много чего прибавить (в т.ч. и про shallow clones), но что-то сомнения берут, что Вы вообще на охоту сюда пришли.  Тем более за терабайтными репо с чем-то полезным.

     
     
  • 3.24, Crazy Alex (??), 23:23, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Вот как раз по удобству администрирования SVN именно в сили централизованности много лучше. Тот же бекап централизованный и не завяисящий от состояния рабочей станции.
     
     
  • 4.31, Аноним (-), 00:12, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Тот же бекап централизованный и не завяисящий от состояния рабочей станции.

    А в git по дефолту каждая копия - полноценный бэкап.

     
     
  • 5.36, Crazy Alex (??), 00:56, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это не бэкап, а пародия- кто, когда и как его покалечит - неизвестно. Централизованный нормально администрируемый бэкап всяко надёжнее.
     
     
  • 6.40, Michael Shigorin (ok), 02:48, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Это не бэкап, а пародия

    Это бэкап.

    > - кто, когда и как его покалечит - неизвестно.

    И обычно неважно, поскольку их таких много (как и положено бэкапам).

    > Централизованный нормально администрируемый бэкап всяко надёжнее.

    Нет, конечно (даже у меня конторские погремушки bacula растаскивает в несколько мест, а самое интересное бэкапится и другими методами).  Просто и он не отменяется. :)

     
     
  • 7.47, Crazy Alex (??), 04:51, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Тут несколько моментов 1 бэкапить придётся каким-то образом локальные репозито... большой текст свёрнут, показать
     
     
  • 8.50, Алексей (??), 06:34, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Уже не первый раз за последние дни встречаю подобный вопрос, и всегда он остаетс... текст свёрнут, показать
     
     
  • 9.59, Crazy Alex (??), 14:19, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    а push rebase push оно прикроет ... текст свёрнут, показать
     
     
  • 10.62, Аноним (-), 14:27, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    акститесь svn only ... текст свёрнут, показать
     
  • 10.73, Алексей (??), 04:04, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Да, это и есть основное предназначение параметра receive denyNonFastForwards он... текст свёрнут, показать
     
  • 6.49, Stream (?), 06:21, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    git дерьмецо
    svn можно запускать без апатча и ssh

    service svnserve start и все!!!

    Простота, Элегантность и нету быдлонабора git add / git commit / git push

     
     
  • 7.51, aborodin (??), 09:17, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > git дерьмецо
    > svn можно запускать без апатча и ssh

    Аля-улю, дядя. git можно запускать без апача и ssh. Неожиданно, правда?

     
     
  • 8.70, Stream (?), 22:59, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Авторизация, шифрование трафика ... текст свёрнут, показать
     
     
  • 9.75, Алексей (??), 04:17, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И давно svn научился шифровать трафик svn ssh исключаем по условию задач... текст свёрнут, показать
     
     
  • 10.76, Stream (?), 04:43, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    sasl use-sasl true min-encryption 128 max-encryption 256 ... текст свёрнут, показать
     
  • 10.77, Stream (?), 04:48, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    http s с коробки не умеет, Апатч не используем по религиозным соображениям ... текст свёрнут, показать
     
  • 7.60, Crazy Alex (??), 14:21, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Набор-то как раз хороший, особенно если помнить о git add -i (а когда не надо - есть git commit -a).
     
  • 2.92, 123 (??), 05:11, 05/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > т.е. вы предлагаете каждому человеку, скачивать 1 Тб репозитарий, чтобы удобно поработать дома? А чо, закинул на флеху и пошел работать домой, удобно ж :D

    Так, для примера - ВСЯ история FreeBSD со всеми ветками в git весит меньше, чем SVN чекаут.

     

  • 1.14, develop7 (ok), 21:38, 02/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    > Git является одной из самых эффективных, надёжных и высокопроизводительных систем управления версиями
    > одной из самых

    Не самой? Да. Не. Может. Быть.

     
     
  • 2.27, Аноним (-), 23:58, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >  Да. Не. Может. Быть.

    [Yes] [No] [Ok] [Cancel] [Abort] [Retry] [Ignore] [Quit]

     

  • 1.16, develop7 (ok), 21:44, 02/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    > может быть прекращена поддержка команды "git branch --set-upstream", которая объявлена устаревшей из-за того, что не редки случаи указания по ошибке "git branch --set-upstream origin/master", что приводило к созданию локальной ветки "origin/master" для интеграции с текущей загруженной веткой, что явно отличается от того, что ожидал получить пользователь

    Последние дни настали. Разработчики git принимают во внимание _ожидания_ пользователя.

     
     
  • 2.28, Аноним (-), 00:00, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Последние дни настали. Разработчики git принимают во внимание _ожидания_ пользователя.

    Внезапно, когда некто делает нечто - он ожидает некий результат. А вот если вы, пристроив зад на толчок вдруг ВНЕЗАПНО отправляетесь на орбиту - это довольно неожиданный результат.

     

  • 1.18, ALex_hha (??), 22:51, 02/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    > для особо одаренных git clone --depth 1

    Костыль на костыле. Нет уж, спасибо :D

    > Предлагаю заюзать sshfs

    ага, и юзать платные клиенты под винду.

     
     
  • 2.20, GentooBoy (ok), 23:05, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Костыль на костыле. Нет уж, спасибо :D

    Это батенька не костыл, это национальная возможность не лить всю историю.
    > ага, и юзать платные клиенты под винду.

    Ну не хочешь sshfs, webdav или smb устроит? бесплатно.

    Поделитесь сколько человеко часов потратили на > 100GB кода.

     
     
  • 3.25, Crazy Alex (??), 23:29, 02/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Оно правда костыльно - при таких объемах (там и одна ревизия соответствующих размеров обычно) локально держать версии очень накладно. Особенно учитывая, что это бинари и, соотвественно, с дельтами там всё плохо. А нужны старые версии довольно редко. Получается, что нужно чутьли не после каждого push прибивать локальные старые версии, что именно костылём и выглядит. А без центрального сервера ни при какой серьезнойразработке обычно не обходится, тем более когда ресь идет о репе с бинарями, которые создают всяко не программисты и доверять им в плане сохранности репозитория нельзя.

    Собственно, для больших бинарей версионник с вероятностью вообще на фиг не нужен - а нужен FTP плюс политика "новую версию кладём в новую папку", заэнфорсенная правилами самого FTP-сервера.

     
     
  • 4.32, Аноним (-), 00:13, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > - а нужен FTP плюс политика "новую версию кладём в новую
    > папку", заэнфорсенная правилами самого FTP-сервера.

    Да, внезапно, VCS это не FTP...

     
     
  • 5.33, Crazy Alex (??), 00:41, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Внезапно главное - какую цель хотим достичь. А потом уже выбираем средства. Если у нас сидит (как я когда-то видел) девочка-художник, которую кое-как научили отличать файлы от каталогов и не класть всё на рабочий стол - какая там VCS. Зато рисует эта девочка великолепно, фантазия отличная и очень быстро въезжает в то, что надо заказчику. Вот это - реальный случай, где FTP + задачка в nnCron отлично подошли. Правда, открывал папку с копиями помогал выбрать нужную эникейщик, но раз в неделю - не сложно.
     
  • 3.37, ALex_hha (??), 01:26, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Поделитесь сколько человеко часов потратили на > 100GB кода.

    без понятия, я их не считаю :)

    Как то так получается

    # cd ~
    # svn co file:/// .... 2012/03/ ./03/
    # du -h ./03/
    222G    03/

    # find . -type f -name '*.psd' -exec ls -l {} \; | awk '{ print $5}' | awk '{s+=$0} END {print s/1073741824" Gb"}'
    95,2019 Gb

     
     
  • 4.43, Michael Shigorin (ok), 03:03, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > # find . -type f -name '*.psd'

    Думаю, за Ваши массивы текстовых файлов *.psd здесь рад не только я, но хотя бы тему своих ответов поправили...

     
     
  • 5.53, ALex_hha (??), 11:37, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >> # find . -type f -name '*.psd'
    > Думаю, за Ваши массивы текстовых файлов *.psd здесь рад не только я,
    > но хотя бы тему своих ответов поправили...

    А вы думали 1 Тб кодинга? :D Я не в M$/google работаю ;) И то сомневаюсь, что даже все исходники всех форточек и всяких эксченджей потянут на такой объем

     
     
  • 6.56, Аноним (-), 13:46, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    сарказм
     
  • 3.38, ALex_hha (??), 01:30, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Это батенька не костыл, это национальная возможность не лить всю историю.

    мне вот нужно сделать checkout одной папки(файла) из репозитария в 250 Gb, git позволит такое сделать?

    > Ну не хочешь sshfs, webdav или smb устроит? бесплатно.

    а что, smb уже научилось over internet работать? Или вы мне сейчас начнете предлагать vpn и т.п. вещи? А вы пробовали балансировать sshfs/webdav/smb? В отличие от http занятие не из приятных ;)


     
     
  • 4.44, all_glory_to_the_hypnotoad (ok), 03:14, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > мне вот нужно сделать checkout одной папки(файла) из репозитария в 250 Gb,

    не нужно вам этого делать, у вас же нет репозитария. Что у вас есть называется файлопомойкой.

     
     
  • 5.52, ALex_hha (??), 11:34, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> мне вот нужно сделать checkout одной папки(файла) из репозитария в 250 Gb,
    > не нужно вам этого делать, у вас же нет репозитария. Что у
    > вас есть называется файлопомойкой.

    о великий и могучий гуру, а мужики то и не знали :D

     
  • 4.45, all_glory_to_the_hypnotoad (ok), 03:25, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > А вы пробовали балансировать sshfs/webdav/smb? В отличие от http занятие не из приятных ;)

    внезапно, webdav и есть http. И ваш SVN вероятно именно через него работает. Подключать удалённый диск в любом случае не айс, для удалённой работы допустимы тольок синки туда-сюда. SVN в основном только это и умеет нормально делать.

     
     
  • 5.54, ALex_hha (??), 11:41, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >> А вы пробовали балансировать sshfs/webdav/smb? В отличие от http занятие не из приятных ;)
    > внезапно, webdav и есть http. И ваш SVN вероятно именно через него работает.

    скажем так, svn это расширенный webdav

    > Подключать удалённый диск в любом случае не айс, для удалённой
    > работы допустимы тольок синки туда-сюда. SVN в основном только это и
    > умеет нормально делать.

    ага, а как потом программисту смотреть отличия в коде? :) Сейчас человек может посмотреть историю ревизий и сравнить файл в двух ревизиях, с наглядным отображением изменений. В вашем случае, хз чо он там будет делать

     
     
  • 6.58, Аноним (-), 13:56, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > ага, а как потом программисту смотреть отличия в коде? :) Сейчас человек
    > может посмотреть историю ревизий и сравнить файл в двух ревизиях, с
    > наглядным отображением изменений. В вашем случае, хз чо он там будет
    > делать

    Какие отличия в коде, у него psd  файлы, у вас psddiff есть?

     
     
  • 7.64, ALex_hha (ok), 14:39, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> ага, а как потом программисту смотреть отличия в коде? :) Сейчас человек
    >> может посмотреть историю ревизий и сравнить файл в двух ревизиях, с
    >> наглядным отображением изменений. В вашем случае, хз чо он там будет
    >> делать
    > Какие отличия в коде, у него psd  файлы, у вас psddiff
    > есть?

    раскройте свой кругозор и тогда вы узнаете, что в природе существуют не только psd файлы :D

     
  • 7.81, Stream (?), 06:37, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> ага, а как потом программисту смотреть отличия в коде? :) Сейчас человек
    >> может посмотреть историю ревизий и сравнить файл в двух ревизиях, с
    >> наглядным отображением изменений. В вашем случае, хз чо он там будет
    >> делать
    > Какие отличия в коде, у него psd  файлы, у вас psddiff
    > есть?

    есть bsdiff = http://www.daemonology.net/bsdiff/

     
     
  • 8.87, Аноним (-), 22:19, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Это другая история ... текст свёрнут, показать
     
  • 6.65, all_glory_to_the_hypnotoad (ok), 15:01, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > скажем так, svn это расширенный webdav

    тоже неправильно. SVN это "суженный" webdav, т.е. его кастомизированное подмножество.

    > ага, а как потом программисту смотреть отличия в коде? :)

    какому программисту, вы очём вообще? У вас же вроде как толпа дизайнеров и прочих нетехнарей, не?

    > Сейчас человек может посмотреть историю ревизий и сравнить файл в двух ревизиях, с наглядным отображением изменений. В вашем случае, хз чо он там будет делать

    мой случай был для простого хранения бинарных данных, это единственная ниша, где SVN может составить конкуренцию остальным инструментам

    Для работы с текстовыми сорцами SVN вообще непригоден, особенно если нужно работать с большим репозитарием или просто удалённо. Ибо

    1. каждая ветка SVN это отдельная копия всего контента (для SVN удвоенное место всего контента). Да, можно извращаться чекаутами только части репы, но для разработки это нетипичный паттерн.

    2. каждый чих это несколько запросов на сервер. Нельзя даже хистори посмотреть без нескольких http/webdav'ных запросов.

    3. естественно, работа остальными ревизиями тоже дёрганье сервера.

    как следствие, SVN ужасно тормозной для обычной разработки.

     
     
  • 7.72, ALex_hha (??), 01:34, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> скажем так, svn это расширенный webdav
    > тоже неправильно. SVN это "суженный" webdav, т.е. его кастомизированное подмножество.

    началась тавтология :)

    > какому программисту, вы очём вообще? У вас же вроде как толпа дизайнеров
    > и прочих нетехнарей, не?

    нет, это лишь ваши домыслы ;)

    > 1. каждая ветка SVN это отдельная копия всего контента (для SVN удвоенное
    > место всего контента). Да, можно извращаться чекаутами только части репы, но
    > для разработки это нетипичный паттерн.

    как раз в моем случае это идеальный вариант, ибо в день по 100-150 проектов и для каждого создавать отдельный репозитарий просто не удобно.

    > 2. каждый чих это несколько запросов на сервер. Нельзя даже хистори посмотреть
    > без нескольких http/webdav'ных запросов.

    а вы каждую секунду смотрите хистори? или вы сидите на gprs

    > 3. естественно, работа остальными ревизиями тоже дёрганье сервера.

    и что. Ну разве что у вас vps за 5$ в месяц

    > как следствие, SVN ужасно тормозной для обычной разработки.

    специфику чистых программистов (с/с++/java, etc) не знаю. Возможно там действительно git намного удобнее.

    Я лишь хотел сказать, что у svn есть своя ниша задач, где он будет удобнее git/mercurial/bazar/etc ... . А где то git будет удобнее.

     
  • 2.29, Аноним (-), 00:01, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Костыль на костыле.

    Возможность настройки теперь называется костылем? Ох, а у вашего монитора яркость не настраивается? А то нафиг вам эти костыли?

     
     
  • 3.39, ALex_hha (??), 01:31, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> Костыль на костыле.
    > Возможность настройки теперь называется костылем? Ох, а у вашего монитора яркость не
    > настраивается? А то нафиг вам эти костыли?

    слышал звон, да не знаю где он :D

     
     
  • 4.57, Аноним (-), 13:48, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Рады за вас, меньше знаешь крепче спишь.
     

  • 1.55, develop7 (ok), 13:08, 03/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Нет, ну серьёзно. Сегодня они правят UI в угоду «ожиданиям», с позволения сказать, пользователя, а что будет завтра? Маны на человеческом языке вместо птичьего? Последовательный и предсказуемый UI? Нормальная архитектура в виде libgit(2) + frontendы? Полноценный интерфейс для встраиваемых плагинов? Сообщения об ошибках, ориентированные на, опять простите, конечного пользователя, а не на разработчика git?
    Думаю, это заговор, имеющий целью сделать Элитный Инструмент Хакеров Ядра очередной унылой просто-DVCS, которая тихо и незаметно работает.
     
     
  • 2.61, Crazy Alex (??), 14:24, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Очень элитарный интструмент, угу - по распространенности примерно как все остальные VCS вместе взятые. Може это вы чего-то не понимаете? Программистам, в общем-то, всунуть неудубную им тулзу довольно сложно.
     
     
  • 3.68, develop7 (ok), 19:04, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > по распространенности примерно как все остальные VCS вместе взятые

    разве что DVCS

    > Може это вы чего-то не понимаете?

    Ага, скоро как 5 лет разными DVCS активно пользуюсь и до сих пор не понимаю.

     
  • 2.63, Аноним (-), 14:38, 03/01/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    внезапно, обычные люди чистым гитом и не пользуются, а юзают надстройки
     
     
  • 3.71, develop7 (ok), 00:08, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > внезапно, обычные люди чистым гитом и не пользуются, а юзают надстройки
    > %  find /usr/lib/git-core/ -lname git | wc -l
    > 107

    пользуются-пользуются. потому что git уже пару лет как сам себе «надстройка».

     

  • 1.67, Andrew Kolchoogin (?), 16:09, 03/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    Ребят, ну чо вы спорите.

    git хуже svn одним -- он тормознее. Но он и должен быть тормознее. Вы ж поймите, ваш локальный винчестер не дотягивает даже до Fast Ethernet, про GigE я уж молчу. А дисковая полка на сервере переплюнет и GigE.

    Соответственно, когда вы работаете с большими репозитариями -- на git'е вы повеситесь на витой паре.

    Во всех остальных возможностях git и svn совпадают.

     
     
  • 2.78, Stream (?), 04:51, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ребят, ну чо вы спорите.
    > git хуже svn одним -- он тормознее. Но он и должен быть
    > тормознее. Вы ж поймите, ваш локальный винчестер не дотягивает даже до
    > Fast Ethernet, про GigE я уж молчу. А дисковая полка на
    > сервере переплюнет и GigE.
    > Соответственно, когда вы работаете с большими репозитариями -- на git'е вы повеситесь
    > на витой паре.
    > Во всех остальных возможностях git и svn совпадают.

    фрактальные алгоритмы, дедупликация, векторное чтение из потока

     
  • 2.86, тот ещё (?), 13:27, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Ребят, ну чо вы спорите.
    > git хуже svn одним -- он тормознее. Но он и должен быть
    > тормознее. Вы ж поймите, ваш локальный винчестер не дотягивает даже до
    > Fast Ethernet, про GigE я уж молчу. А дисковая полка на
    > сервере переплюнет и GigE.
    > Соответственно, когда вы работаете с большими репозитариями -- на git'е вы повеситесь
    > на витой паре.

    Мы с boost'ом работали?

    > Во всех остальных возможностях git и svn совпадают.

     
  • 2.91, Michael Shigorin (ok), 03:39, 05/01/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Вы ж поймите, ваш локальный винчестер не дотягивает даже до
    > Fast Ethernet, про GigE я уж молчу. А дисковая полка на
    > сервере переплюнет и GigE.

    Андрей, вообще-то средний локальный винчестер переплёвывал FE (~11Mb/s) ещё в прошлом веке, где-то в районе десяти гигабайт ёмкости.  Конкретно DTLA 15Gb/7200RPM у меня на VIA686 отдавал порядка 27 Mb/s в начале диска.

    Даже если бы GE был в десять раз быстрее, то это максимум нынешние бюджетные двухблинные терабайтники (Hitachi HDS721010CLA332: ~130 Mb/s на старте).

    Дисковые полки (и даже просто стопку локальных SAS в RAID5/6/10) нынче из эзернетов лучше высовывать десяткой.

    А ещё есть такая штука как SSD, рекомендую пощупать.  В новом ноуте отдаёт несколько более 440Mb/s sustained.

    > Соответственно, когда вы работаете с большими репозитариями --
    > на git'е вы повеситесь на витой паре.

    Позвольте усомниться ввиду вышесказанного (особенно при активном пересечении по местам, над которыми работают).

    > Во всех остальных возможностях git и svn совпадают.

    Наверное, смешнее всех было бы разработчикам SVK...

     
  • 2.97, slowpoke (?), 13:04, 10/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >git хуже svn одним -- он тормознее.

    расскажите что там еще интересного в вашей альтернативной реальности?)))))))

     

  • 1.79, бедный буратино (ok), 05:38, 04/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Вот, характерный пример. Я сейчас случайно изменил файл в git-репозитории, который мне нужен только на чтение. Что в svn, что в hg, я уже заранее знаю, как его вернуть назад, это логично и очевидно, и идёт на третьей странице руководства.

    В git же, если не знаешь, если не знаешь всех нюансов, то его использование - это постоянное натыкание вот на такие неочевидности, и пока не разберёшься со всеми, пользоваться git практически невозможно. git - это показатель крутости, а не показатель эффективности :) он позволяет смотреть на других свысока. но большинству людей неинтересны технические тонкости, им нужно простое средство решать простые задачи, и чтобы оно было логично и понятно. Я прочитал штук 20 учебников по git, несколько лет пытался им пользоваться хотя бы по мелочам, но у меня не техническое мышление и я вообще не понимаю логики его работы, у меня нет никакой основы, на которую можно опереться. При этом с hg у меня никаких проблем не возникает, я его освоил сразу и многие вещи там делаются легко и просто.

     
     
  • 2.80, Stream (?), 05:49, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >[оверквотинг удален]
    > пока не разберёшься со всеми, пользоваться git практически невозможно. git -
    > это показатель крутости, а не показатель эффективности :) он позволяет смотреть
    > на других свысока. но большинству людей неинтересны технические тонкости, им нужно
    > простое средство решать простые задачи, и чтобы оно было логично и
    > понятно. Я прочитал штук 20 учебников по git, несколько лет пытался
    > им пользоваться хотя бы по мелочам, но у меня не техническое
    > мышление и я вообще не понимаю логики его работы, у меня
    > нет никакой основы, на которую можно опереться. При этом с hg
    > у меня никаких проблем не возникает, я его освоил сразу и
    > многие вещи там делаются легко и просто.

    git похож на большую неуправляемую фуру

     
     
  • 3.88, Аноним (-), 22:24, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >> это показатель крутости, а не показатель эффективности :) он позволяет смотреть
    >> на других свысока. но большинству людей неинтересны технические тонкости, им нужно
    >> простое средство решать простые задачи, и чтобы оно было логично и
    >> понятно. Я прочитал штук 20 учебников по git, несколько лет пытался
    >> им пользоваться хотя бы по мелочам, но у меня не техническое
    >> мышление и я вообще не понимаю логики его работы, у меня
    >> нет никакой основы, на которую можно опереться. При этом с hg
    >> у меня никаких проблем не возникает, я его освоил сразу и
    >> многие вещи там делаются легко и просто.
    > git похож на большую неуправляемую фуру

    гыг, сказали люди про framework, во внутренности загляните

     
  • 2.82, Stream (?), 07:48, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >[оверквотинг удален]
    > пока не разберёшься со всеми, пользоваться git практически невозможно. git -
    > это показатель крутости, а не показатель эффективности :) он позволяет смотреть
    > на других свысока. но большинству людей неинтересны технические тонкости, им нужно
    > простое средство решать простые задачи, и чтобы оно было логично и
    > понятно. Я прочитал штук 20 учебников по git, несколько лет пытался
    > им пользоваться хотя бы по мелочам, но у меня не техническое
    > мышление и я вообще не понимаю логики его работы, у меня
    > нет никакой основы, на которую можно опереться. При этом с hg
    > у меня никаких проблем не возникает, я его освоил сразу и
    > многие вещи там делаются легко и просто.

    http://habrahabr.ru/post/150191/

     
  • 2.83, asdoooq (?), 08:36, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Я прочитал штук 20 учебников по git, несколько лет пытался
    > им пользоваться хотя бы по мелочам, но у меня не техническое
    > мышление и я вообще не понимаю логики его работы, у меня
    > нет никакой основы, на которую можно опереться.

    Бедный буратино.


     
  • 2.84, develop7 (ok), 09:57, 04/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Вот, характерный пример. Я сейчас случайно изменил файл в git-репозитории, который мне нужен только на чтение. Что в svn, что в hg, я уже заранее знаю, как его вернуть назад, это логично и очевидно, и идёт на третьей странице руководства.

    Зачем руководство? «вернуть» == «revert» => hg/svn/darcs/mtn/bzr/fossil revert. problem solved.

    > но большинству людей неинтересны технические тонкости, им нужно простое средство решать простые задачи, и чтобы оно было логично и понятно.

    Скорее средство, которое не мешает решать свои задачи.

    > у меня не техническое мышление и я вообще не понимаю логики его работы

    Думаю, это не имеет значения. У меня техническое мышление и я понимаю логику работы git — и всё равно он вызывает в лучшем случае недоумение, иногда раздражение.

    > нет никакой основы, на которую можно опереться

    низкоуровневое поделие (до сих пор) потому что. Выход один — заучивать man gitglossary чтобы хотя бы читать man git-* без подглядывания в первый.

     
  • 2.93, unknown (??), 15:59, 05/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Откатить измененный файл до зафиксированной версии:
    git checkout path/to/file/name
     
     
  • 3.94, develop7 (ok), 21:38, 05/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    а ещё откатить рабочую копию до нужного состояния — тоже git checkout. И даже переключиться в ветку, предварительно создав её — тоже git checkout.

    http://stevelosh.com/media/images/blog/2010/01/mercurial-vs-git.jpg

     
     
  • 4.95, GentooBoy (ok), 09:19, 06/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    ветку вы можете откатывать не только так, что плохого в ключике -b, очень удобно.
    Если вы постоянно стреляете себе в ногу, это не значит что ружье плохое, просто на предохранитель нужно ставить.
     
     
  • 5.96, develop7 (ok), 13:50, 08/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > ветку вы можете откатывать не только так

    Что как бы намекает, что дизайн git CLI продумывался не менее 15 минут. А то и целых 20.

    > вы постоянно стреляете себе в ногу

    Как будто бы работа программиста недостаточно сложна и без закидонов git.

     

  • 1.89, Аноним Аналитег (?), 01:26, 05/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Уже пол года как я использую git по работе, но ощущение как от работы с бензопилой. Нужен постоянный контроль своих действий + мета-версионный инстумент tar :)
     
     
  • 2.90, Stream (?), 02:00, 05/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Уже пол года как я использую git по работе, но ощущение как
    > от работы с бензопилой. Нужен постоянный контроль своих действий + мета-версионный
    > инстумент tar :)

    Именно про это я и хочу сказать, все есть
    Но для работы с git нужны склилы и прокачка магии

     
  • 2.98, slowpoke (?), 13:29, 10/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    контроль своих действий нужен даже во сне чтобы постель не замочить
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру