git clone
和之间有什么区别git checkout
?
git clone
和之间有什么区别git checkout
?
Answers:
结帐手册页:http : //git-scm.com/docs/git-checkout
克隆的手册页:http : //git-scm.com/docs/git-clone
综上所述,克隆用于获取您没有的存储库,签出用于在您已经拥有的存储库中的分支之间切换。
注意:对于具有SVN / CVS背景并且是Git新手的用户,git clone
SVN / CVS中的等同于checkout
。不同术语的相同措辞常常令人困惑。
checkout
也可以用于其他用途,例如用另一个修订版本的文件版本覆盖工作副本中的文件。
git clone是从远程git服务器获取您的存储库。
git checkout用来检出所需的存储库状态(如分支或特定文件)。
例如,您当前在master分支上,并且您想要切换到development分支。
git checkout develop_branch
例如,您想签出特定文件的特定状态
git checkout commit_point_A -- <filename>
这是学习Git 的良好参考,可让您更轻松地了解Git。
git clone
还将与本地存储库一起使用。
要注意的一件事是git中缺少任何“复制”。这是因为您的本地存储库中已经有完整副本-您的本地存储库是clone
您选择的上游存储库中的一个。因此,您实际上拥有checkout
了一切的个人资料,而无需对参考存储库中的那些文件施加“锁定”。
Git提供SHA1哈希值作为一种机制,以验证您拥有的文件/目录树/提交/回购副本与在信任层次结构中能够将事物声明为“主”的人所使用的完全相同。这样可以避免所有导致大多数SCM系统阻塞的“锁”(常见的私有副本问题,大合并问题,以及没有对源代码的真正控制或管理;-)!