2008-12-02 1 views
4

Для меня не редкость записывать патч, вытаскивать его в мою промежуточную ветку, а затем понимать, что я сделал что-то маленькое и глупое, как опечатка в сообщении регистрации, или нечто подобное тривиально, t требуют (на мой взгляд) целого нового патча.darcs edit-record workflow

В этих случаях я использую:

darcs amend-record 

Чтобы обновить патч. Но когда я перетаскиваю darcs, вы будете рассматривать патчи как противоречащие друг другу, поэтому мне нужно забыть и вернуть патч в промежуточную ветку, а затем снова вытащить ее.

Есть ли команда или опция darcs, которая позволит мне более просто вытащить исправленный патч?

ответ

3

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

5

Не совсем. Изменение патча делает его другим патчем, хотя имя такое же, как раньше. исправление обычно используется только в локальном репо, прежде чем патч был нажат/вытащен в другом месте. Если патч был перенесен в другие репозитории, вам нужно будет уничтожить его и перетянуть измененную версию. (стирать - это современное написание «непритязательного»).

В качестве альтернативы используйте команду отката; это более дружелюбно, когда рассматриваемые репозитории являются общедоступными и используются несколькими разработчиками.

+0

Это кажется еще более сложным, если вы хотите синхронизировать удаленное репо (например, на ), на которое вы обычно нажимаете. Скажем, если это не один патч, то как вы легко можете сделать удаленное репо, стереть все патчи, которые не находятся в определенном локальном? (Прежде чем нажимать исправленные исправления.) Я думаю, что одним из способов было бы поместить копию нового локального репо в Интернете, а `ssh HUB уничтожить` с некоторыми вариантами, относящимися к новой копии, которые делают он выбирает патчи не в ссылочном репо ... – 2016-01-08 00:14:53