Size: a a a

2020 August 07

Prikolist Начрэл... in pro.git::next
Только цветом не выделяет
источник
2020 August 10

P

Pavel in pro.git::next
Всем привет.
Подскажите как правильно поступить.
У меня есть форк на github и пулл-реквест из него в основной репозиторий.
Меня попросили сделать изменения в другом файле в ходе этого пулл-реквеста, но этот файл уже менялся и если я сделаю изменения в мою версию, то она будет конфликтовать при мерже.

Мне вероятно надо обновить код в форке, но я не уверен как это правильно сделать, чтобы не сломать ничего.

Могу ли я взять код из основного репозитория и просто накатить свой коммит поверх, и сделать новую правку аммендом?

Что-то вроде:
1) ресетнуть мастер моего форка на мастер апстрима
2) черрипикнуть на него коммит с моими изменениями
3) сделать новую правку и зааммендить к тому же коммиту
4) форспуш в мастер форка
5) ...
6) PROFIT

Не сломается ли после этого мой пуллреквест? И нужно ли будет что-то сделать дополнительно (в пункте 5 :))?
источник

P

Pavel in pro.git::next
Сделал так как описал. Все сработало: пулл-реквест обновился как надо, дополнительных действий не потребовалось.
Кстати, в истории пулл-реквеста появилась запись о том что я форспушнул и ссылки на старый и новый коммит. То есть все максимально прозрачно.
источник
2020 August 11

VL

Valerii Leontiev in pro.git::next
Есть ли в Гите возможность работать параллельно на двух ветках из одного и того же проекта?
источник

P

Pavel in pro.git::next
Valerii Leontiev
Есть ли в Гите возможность работать параллельно на двух ветках из одного и того же проекта?
Да, можно коммитить временные изменения и переключаться между ветками или через worktree зачекаутить несколько рабочих копий с разных веток одного репозитория
источник

VL

Valerii Leontiev in pro.git::next
Pavel
Да, можно коммитить временные изменения и переключаться между ветками или через worktree зачекаутить несколько рабочих копий с разных веток одного репозитория
А без чекаута?
Вот я открыл проект в двух экземплярах и хочу чтобы там были две разные ветки
источник

K

Konstantin in pro.git::next
Valerii Leontiev
А без чекаута?
Вот я открыл проект в двух экземплярах и хочу чтобы там были две разные ветки
в одном из экземпляров сделай чекаут, а во втором нет)
источник

K

Konstantin in pro.git::next
Konstantin
в одном из экземпляров сделай чекаут, а во втором нет)
хотя наверно понял в чем проблема, какая ИДЕ?
источник

VL

Valerii Leontiev in pro.git::next
Konstantin
в одном из экземпляров сделай чекаут, а во втором нет)
Я видимо не так выразился. Проект у меня один, но открыт в двух ide, например
источник

VL

Valerii Leontiev in pro.git::next
Konstantin
хотя наверно понял в чем проблема, какая ИДЕ?
vim)
источник

VL

Valerii Leontiev in pro.git::next
Вот я открываю два экземпляра терминала, и хочу работать в них на разных ветках, не дёргая чекаут
источник

K

Konstantin in pro.git::next
скопируй проект рядом, по другому думаю не получится
git меняет состояние файлов и оно не может быть в двух экземплярах одновременно
источник

P

Pavel in pro.git::next
Valerii Leontiev
Вот я открываю два экземпляра терминала, и хочу работать в них на разных ветках, не дёргая чекаут
Почитайте про worktree, мне кажется это то что вам нужно
источник

VL

Valerii Leontiev in pro.git::next
Konstantin
скопируй проект рядом, по другому думаю не получится
git меняет состояние файлов и оно не может быть в двух экземплярах одновременно
Знаю про этот способ, но, к сожалению, не подходит.
источник

VL

Valerii Leontiev in pro.git::next
Pavel
Почитайте про worktree, мне кажется это то что вам нужно
Спасибо, попробую почитать
источник

P

Pavel in pro.git::next
Зачекаутить я имел ввиду один раз для копии зачекаутить, не при каждом переключении.
Worktree это будет почти то же что две копии репозитория (но можно будет шарить стеши между ними например и не будет оверхеда на хранение двух копий истории).

Если это не подходит, то нужно более подробное описание задачи.
источник

Dv

Dr. Friedrich von Ne... in pro.git::next
Valerii Leontiev
Есть ли в Гите возможность работать параллельно на двух ветках из одного и того же проекта?
Посмотри на git worktree
источник

Dv

Dr. Friedrich von Ne... in pro.git::next
Вроде это то, что тебе надо
источник

Dv

Dr. Friedrich von Ne... in pro.git::next
А, уже предложили :)
источник

VL

Valerii Leontiev in pro.git::next
Pavel
Зачекаутить я имел ввиду один раз для копии зачекаутить, не при каждом переключении.
Worktree это будет почти то же что две копии репозитория (но можно будет шарить стеши между ними например и не будет оверхеда на хранение двух копий истории).

Если это не подходит, то нужно более подробное описание задачи.
Правильно ли я понимаю, что под капотом создаётся копия репозитория?
источник