Потягнути віддалене відділення в місцевий репо з іншою назвою?


112

Гаразд, я трохи провів дослідження з цього приводу, але не зміг знайти точної відповіді, тому мені потрібно запитати.

У мене є 2 пульта: origin та repo2.

Я хотів би зробити щось подібне

git pull repo2 master

Але це потягнуло б головну гілку repo2 до мого майстра. Чи можу я вказати іншу гілку для своєї місцевої гілки?

Відповіді:


163
git checkout -b myBranchName repo2/master

20
Примітка. Ви повинні запустити git fetch remote2заздалегідь, якщо цього ще не зробити. В іншому випадку ви можете побачити> фатально: Не вдається оновити контури та перейти до гілки "myBranchName" одночасно.
дман

Примітка - якщо вам потрібно відштовхуватися, використовувати git push repo2 myBranchName:masterяк простий git pushне вдасться
jaimedash

2
Що робити, якщо філія вже існує? Я хочу оновити код там кодом від repo.
Джаред

@Jared Технічно інше питання, але також легко можливе (і насправді це один із найпоширеніших випадків використання). Це трохи залежить від того, що ви вже робили. У більшості випадків це просто git checkout my_branch && git pull --rebase( --rebaseзалежить від вашого робочого процесу). Якщо гілка вже не відстежує віддалену, її потрібно виконати git branch --set-upstream my_branch upstream/my_branchодин раз.
KingCrunch

4

git pullКоманда зручна функція , яка робить git fetchі git merge. Якщо ви хочете отримати гілки лише з нового пульта, не намагаючись об'єднати його в будь-яку гілку робочої копії, яку ви можете просто використовувати git fetch. Потім ви можете посилатися, щоб git branch -avпобачити всі локальні та віддалені відділення та працювати на будь-якому віддаленому, як вам подобається.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.