git clone和git checkout之间的区别是什么?
git clone
git checkout
结帐的手册页:http://git-scm.com/docs/git-checkout
克隆的手册页:http://git-scm.com/docs/git-clone
总而言之,克隆是用于获取您没有的存储库,签出是用于在您已经拥有的存储库中的分支之间切换。
注意:对于那些有SVN/CVS背景和刚接触Git的人来说,在SVN/CVS中等价于git clone的是checkout。不同术语的相同措辞常常令人困惑。
checkout
git克隆用于从远程git服务器获取你的存储库。
git checkout用于检出您的存储库(如分支或特定文件)的所需状态。
例如,你目前在主分支上,你想切换到开发分支。
git checkout develop_branch
例如,您想签出到特定文件的特定状态
git checkout commit_point_A -- <filename>
这里有一个好的参考供你学习Git,让你更容易理解。
需要注意的一点是git中没有任何“Copyout”。这是因为你已经在你的本地回购中有一个完整的副本-你的本地回购是你所选择的上游回购的clone。因此,你有效地拥有了一切的个人checkout,而无需在参考回购中对这些文件进行一些“锁定”。
clone
Git提供了SHA1哈希值作为一种机制,用于验证您拥有的文件/目录树/提交/回购的副本与能够在信任层次结构中将事物声明为“Master”的人所使用的副本完全相同。这避免了所有那些导致大多数SCM系统阻塞的“锁”(常见的问题包括私有副本、大合并以及没有对源代码的真正控制或管理;-)!
简单的git checkout有2个用途
git checkout <existing_local_branch_name>
git checkout -b <new_feature_branch_name>
你可以在官方网站找到更多的选项
checkout可以用于多种情况:
1例:在本地存储库的分支之间切换 例如: Git签出exists_branch_to_switch < /代码> < / p > 在本例中,你也可以使用-b创建新的分支并切换 < p > <代码> Git checkout -b new_branch_to_switch < /代码> < / p > 2例:从x rev恢复文件 < p > <代码> Git校验rev file_to_restore …< / p >
Git签出exists_branch_to_switch < /代码> < / p > 在本例中,你也可以使用-b创建新的分支并切换 < p > <代码> Git checkout -b new_branch_to_switch < /代码> < / p > 2例:从x rev恢复文件 < p > <代码> Git校验rev file_to_restore
在本例中,你也可以使用-b创建新的分支并切换
-b
2例:从x rev恢复文件