关于 git 的用法,远端已经有 main 和 dev 分支的情况下,本地的是 main 分支,如何把远端的 dev 也拉下来做开发,然后修改再合并到 main 上呢?

2021-10-12 15:34:34 +08:00
 freemangl
远端已经有 main 和 dev 分支的情况下,本地的是 git clone 下来的 main 分支,如何把远端的 dev 也拉下来做开发,然后修改再合并到 main 上呢?
3216 次点击
所在节点    git
10 条回复
lizuoqiang
2021-10-12 15:39:14 +08:00
newaccount
2021-10-12 15:40:48 +08:00
git fetch; git checkout -b dev origin/dev
AoEiuV020
2021-10-12 15:54:19 +08:00
一般情况直接 clone 没有手动指定分支的话其实 dev 分支也已经 clone 下来了,
直接 git checkout dev 就可以把本地切到远端一样的 dev 分支,
julyclyde
2021-10-12 17:04:51 +08:00
git fetch
git branch -R 查看远程分支
然后
git checkout -b 本地分支名字 origin/远程分支名字
ysc3839
2021-10-12 17:06:44 +08:00
CEBBCAT
2021-10-12 17:07:35 +08:00
记得单独拉一个分支做修改或者使用 cherry-pick,不要把 dev 合并到 main
vzex0wsir
2021-10-12 17:38:37 +08:00
skiy
2021-10-12 21:19:00 +08:00
直接 git checkout dev 就好了,连 -b 都不需要。前提是你是从该仓库拉下来的,且其有 dev 分支。
jinliming2
2021-10-13 01:10:07 +08:00
# 正常 clone 的时候,所有远端分支都下来了的,如果 dev 是在你 clone 之后才创建的,或者在你 clone 之后有更新,跑一遍这个总没错!
git fetch origin dev

# 本地创建并切到 dev 分支,并跟踪远程 dev
git checkout -b dev origin/dev

# 本地修改

# 添加并提交
git add xxx
git commit -m "xxx"

下面两种情况:
1,你推送 dev 到远程,然后远程上合并:直接 git push 就行,然后远程上操作
2,你本地合到 main 上,推到远程 main:
# 切换回本地的 main 分支
git checkout main
# 合并 dev 的修改
git merge --no-ff dev
# 推送 main
git push
freemangl
2021-10-13 09:36:40 +08:00
@jinliming2 感谢!非常详细

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/807324

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX