Документация Calculate Linux
Вид материала | Документы |
СодержаниеСерверные команды репозитория Правка коммитов в общем случае Правка коммитов вручную, без git-rebase |
- В Linux. 2 Приобретение и инсталляция Linux. 3 Учебник по Linux 4 Администрирование, 3589.91kb.
- Gnu/Linux, 51.18kb.
- Лекция 17. Операционная система Linux, 126.24kb.
- Концепция развития спо в РФ 2 История Linux, 105.81kb.
- Windows против Linux, 88.72kb.
- RH253 Сетевые службы Red Hat Linux и администрирование безопасности, 45.9kb.
- Установка ос linux: основные моменты, 83.79kb.
- Исследование возможностей ос linux для приложений реального времени с обработкой разнородной, 98.25kb.
- План лекции «alt linux. Установка и особенности» Заявка на участие в апробации Линукса, 48kb.
- Linux от Пламен Петков По-добрата операционна система Linux?, 1306.19kb.
Серверные команды репозитория; git update-server-info : Команда создает вспомогательные файлы для dumb сервера в $GIT_DIR/info и $GIT_OBJECT_DIRECTORY/info каталогах, чтобы помочь клиентам узнать, какие ссылки и пакеты есть на сервере. ; git count-objects : Проверка, сколько объектов будет потеряно и объём освобождаемого места при перепаковке репозитория. ; git gc : Переупаковка локального репозитория. РецептыСоздание пустого репозитория на сервере repo="repo.git" mkdir $repo cd $repo git init --bare chown git. -R ./ cd ../ Импорт svn репозитория на Git сервер repo="repo.svn" svnserver="late.ru" git svn clone -s $svnserver/$repo $repo mv $repo/.git/refs/remotes/tags $repo/.git/refs/tags rm -rf $repo/.git/refs/remotes rm -rf $repo/.git/svn mv $repo/.git $repo.git rm -rf $repo cd $repo.git chown git. -R ./ cd ../ Правка последнего коммита Для правки ''последнего'' коммита достаточно git commit --amend, который перезакоммитит при выполнении ряда разумных условий добавленные после коммита изменения «заодно». Правка коммитов в общем случаеВ общем случае для редактирования коммитов удобно применять git rebase --interactive. Это выглядит примерно так: $ git rebase -i коммит [ Нам показывают в редакторе список коммитов. Перед тем, который хотим исправить, меняем pick на edit. Сохраняем и выходим. ] You can amend the commit now, with git commit --amend Once you are satisfied with your changes, run git rebase --continue [ Теперь текущим стал тот коммит, который мы хотим исправить. ] $ vim нужный/файл # исправляем всё, что хотим $ git commit --am нужный/файл $ git rebase --continue То же самое можно сделать и вручную. Правка коммитов вручную, без git-rebaseИногда не хочется делать новые коммиты, которые являются мелкими исправлениями к предыдущим коммитам. Поэтому я предлагаю такое правило для использования git push --force: нельзя заменять коммиты дальше последнего публичного тага, или же дальше коммита, отправленного на сборку (без специальных усилий изменение такого коммита приведёт к тому, что следующая сборка будет отвергнута). Допустим, что эти условия выполнены, а исправления мелких/глупых ошибок не хочется оформлять отдельно. Для примера объясню, как поправить пред-предпоследний коммит. Сначала нужно сохранить текущую работу во временный бранч: $ git branch save Потом нужно откатить работу до пред-предпоследнего коммита: $ git reset --hard HEAD Теперь нужно поправить пред-предпоследний коммит, который стал текущим: $ vim ... $ git commit -a --am Затем поверх пред-предпоследнего коммита нужно накатить предпоследний и последний коммиты из сохраненного бранча: $ git cherry-pick -r save $ git cherry-pick -r save Осталось только удалить временный бранч: $ git branch -D save После этого уже можно сделать $ git push --force git.alt 3. Руководство по оформлению программ на Python Author: Guido van Rossum Оригинальная статья на английском: ссылка скрыта Python Style Guide Перевод выполнен компанией «Калкулэйт». |