Переместить текущую ветку на другое рабочее дерево
Я хочу переместить мою текущую ветку git на другое рабочее дерево git b/c Я хочу изменить разрешения на чтение / запись файла, не влияя на права доступа к файлам других веток в текущем рабочем дереве.
Как я могу переместить / скопировать мою текущую ветку на другое рабочее дерево и как я могу вернуться к исходному рабочему дереву?
3 ответа
Я "перемещаю" ветку к своему альтернативному рабочему дереву вот так
- Оформить заказ на любую другую ветку в моем текущем дереве. (ветка, которую вы хотите переместить, не может быть извлечена)
- Откройте окно git в моем альтернативном рабочем дереве и проверьте ветку, которую я хочу "переместить"
Это все. У меня открыто два окна git бок о бок. (мое основное рабочее дерево и мое альтернативное) Очень легко увидеть, что я делаю.
VonC опубликовал отличный ресурс Несколько рабочих древовидных каталогов
Попробуй с этим
- скопировать текущий рабочий каталог
- пункт назначения кассы
- вставить
- совершить
или с...
- git checkout ветка, которую вы хотите переместить
- ветка назначения git rebase
в случае конфликта, если вы хотите управлять ими:
- git checkout ветка, которую вы хотите переместить
- git rebase -i ветка назначения
Вы не должны и не можете "копировать" ветку, потому что ветки разделены между рабочими деревьями, она уже есть. Вероятно, вы имели в виду проверить текущую ветку на другом рабочем дереве. Это возможно двумя способами:
- Временная проверка текущей работы в другой ветке:
git checkout -b tmp
(Я не уверен, как он себя ведет, когда вы не передали изменения), затем извлеките эту ветку в другом рабочем дереве, или - использовать другую временную ветку на основе текущей. Первоначально это был бы тот же коммит, которого должно быть достаточно в большинстве случаев.