Написать напрямую в удаленный репозиторий Git, не добавляя объекты в локальный индекс / репо - PullRequest
5 голосов
/ 25 апреля 2010

Поддерживает ли Git какие-либо команды, которые позволили бы мне фиксировать напрямую из локального / рабочего дерева в удаленный репозиторий? Обычный рабочий процесс требует «git add», по крайней мере, для наполнения базы данных объектов копиями содержимого файла и т. Д.

Я понимаю, что это НЕ нормальный, ожидаемый рабочий процесс Git. Но я заметил, что Git уже поддерживает загрузку прямо из репозитория без локального репо («архив git»), поэтому кажется разумным, что может быть аналогичная операция загрузки.

В качестве альтернативы, если такой команды нет в самом ядре Git, поддерживает ли какое-либо стороннее программное обеспечение прямую удаленную запись?

Ответы [ 2 ]

2 голосов
/ 25 апреля 2010

Насколько я знаю, нет (не напрямую , см. Мой законченный ответ в конце):

Вот официальный рабочий процесс с данными Git , между локальным и удаленным репо:

альтернативный текст http://osteele.com/images/2008/git-transport.png

Как видите, git add связан с индексом и пока не повлияет на ваше локальное репо.
Весь набор команд приведен здесь для обеспечения соблюдения некоторых политик публикации :

альтернативный текст http://osteele.com/images/2008/commit-policies.png


Единственный способ напрямую повлиять на удаленное репо с локальными изменениями (так как изменения в вашем рабочем каталоге полностью неизвестны Git) - это:

git diff -p origin > diff_not_in_origin.patch

отправьте патч и увидите, что на "исходном" сервере установлен какой-то триггер, который автоматически git am скажет указанный патч.

1 голос
/ 10 февраля 2011

Я сам не пробовал, но вы можете попробовать использовать CVS для доступа к вашему git-репозиторию, используя "git cvsserver". Вам все равно потребуется локальная рабочая копия, но она будет содержать только одну копию файлов проекта и некоторые метаданные CVS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...