Могу ли я отправить свой рабочий каталог без предварительного подтверждения? - PullRequest
2 голосов
/ 18 марта 2012

Мой веб-сервер настроен как удаленное git-репо, поэтому я могу набрать «git push staging», и мой последний коммит запускается на сервере. Я использовал этот урок , чтобы настроить это.

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

Ответы [ 2 ]

2 голосов
/ 18 марта 2012

Это невозможно. Вы можете только толкать наборы изменений (или зафиксировать). Таким образом, вам всегда нужно создавать коммиты.

Однако вы можете создать локальную ветку разработки или промежуточной ветки, где вы фиксируете свои тесты и отправляете их на сервер. Как только вы будете удовлетворены, вы можете объединить + сквош / черри-забрать свои изменения в свою основную ветку.

1 голос
/ 18 марта 2012

Что вы хотите сделать невозможно , НО Ваша проблема может быть решена путем создания функциональной ветви (ветви, в которой вы сосредоточены только на реализацииединственная особенность, которую вы позже объедините в master или другую ветвь).

По сути, все, что вам нужно сделать, это git checkout -b feature_branch_name commit_sha1 (где commit_sha1 - необязательный параметр, который задает начальную точку ветки;если вы не укажете этот параметр, он будет по умолчанию HEAD).

Вы продолжаете работать (фиксируете и отправляете в главный репозиторий):

git add .
git commit
git push origin feature_branch_name
# repeat until done

и когда вы заканчиваете функциюВы объединяете его в master (или в любую другую нужную вам ветку):

git checkout master
git merge feature_branch_name

Более подробную информацию о функциональных ветвях (и ветвлении и объединении в целом) можно найти здесь .

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