获得一个项目中不同人的分支
可以尝试使用 Source Tree
首先你得知道你们项目的远程服务器的名称是什么,因为想要获得“不同人的分支”,他们首先得把分支推送到服务器上你才能拉取下来。(虽然也可以通过本地磁盘映射或是 SSH 等方式直接获取,但这些都是非常规的方式,应该也不在你考虑的范畴里)
在你的项目下输入 `git config --local --list`,查找 `remote.xxx` 开头的输出,`xxx` 的部分就是服务器的名称,通常都是 `origin`。
第二步,抓取远程服务器最新的变更。git pull origin 或者 git fetch origin 都可以,前者会把以追踪的本地分支直接 merge/rebase(取决于你设定的合并策略,这不重要)
git pull origin
git fetch origin
第三步,查看你需要的分支名称。git branch -a,其中 remotes/ 开头的都是远程分支的名字,假设你想抓取的分支叫做 john-doe,那就应该是 remotes/origin/john-doe。
git branch -a
remotes/
john-doe
remotes/origin/john-doe
最后检出(checkout)该分支并创建本地对应的分支。git checkout -b john-doe remotes/origin/john-doe,该命令会创建本地名为 john-doe 的分支并自动切换过去,于是你就获得了“不同人的分支”
git checkout -b john-doe remotes/origin/john-doe
实际中不用这么繁琐,因为你可以直接问“其他人”推送分支的名字叫什么,然后更新+检出即可。
什么叫不同人的分支?git checkout <branch name>不能满足你的需求么?
git checkout <branch name>
可以尝试使用 Source Tree
首先你得知道你们项目的远程服务器的名称是什么,因为想要获得“不同人的分支”,他们首先得把分支推送到服务器上你才能拉取下来。(虽然也可以通过本地磁盘映射或是 SSH 等方式直接获取,但这些都是非常规的方式,应该也不在你考虑的范畴里)
第二步,抓取远程服务器最新的变更。
git pull origin
或者git fetch origin
都可以,前者会把以追踪的本地分支直接 merge/rebase(取决于你设定的合并策略,这不重要)第三步,查看你需要的分支名称。
git branch -a
,其中remotes/
开头的都是远程分支的名字,假设你想抓取的分支叫做john-doe
,那就应该是remotes/origin/john-doe
。最后检出(checkout)该分支并创建本地对应的分支。
git checkout -b john-doe remotes/origin/john-doe
,该命令会创建本地名为john-doe
的分支并自动切换过去,于是你就获得了“不同人的分支”实际中不用这么繁琐,因为你可以直接问“其他人”推送分支的名字叫什么,然后更新+检出即可。
什么叫不同人的分支?
git checkout <branch name>
不能满足你的需求么?