该clone
命令做什么?svn中有与之等效的东西吗?
之间有什么区别
git remote add test git://github.com/user/test.git
和
git clone git://github.com/user/test.git
创建的仓库的名称重要吗?
该clone
命令做什么?svn中有与之等效的东西吗?
之间有什么区别
git remote add test git://github.com/user/test.git
和
git clone git://github.com/user/test.git
创建的仓库的名称重要吗?
git remote add; ...other commands...
和git clone
。
Answers:
git remote add
只需在git配置中创建一个条目,为特定的URL指定一个名称。您必须已有一个git repo才能使用它。
git clone
通过复制位于您指定的URI上的现有git存储库来创建新的git存储库。
git init
,然后再执行git fetch
和git merge
(或git pull
)操作,然后您仍然需要一点点...查看我链接的重复项。
这些在功能上相似(尝试!):
#git clone REMOTEURL foo
和:
#mkdir foo #cd foo #git init #git remote add origin REMOTEURL #git pull origin master #cd ..
现在有细微的差别,但是从根本上讲,您可能不会注意到它们。作为练习留给读者,比较每个目录中的.git / config。
clone
,.git / config具有[branch“ master”]部分。这是否意味着在使用clone
(将来)时,我可以合并该分支,而不能合并remote add
?
git branch --set-upstream master origin/master
。这就是第三个命令我使用后git remote add
,并git pull
已上市,而那些3个命令似乎给了我一个相同的配置是什么git clone
会做。
--set-upstream
似乎已被弃用,这样效果更好:git branch --set-upstream-to=origin/master master
git clone
:
会将文件实际下载到您的计算机中。它将占用您计算机的空间。如果存储库为200Mb,则它将下载所有存储库并将其放置在克隆的目录中。
git remote add
:
不会占用空间!更像是指针!它不会增加磁盘消耗。我相信它只是获得了可用的分支及其git提交历史的快照。它不包含项目的实际文件/文件夹。
如果您这样做:
git remote add TechLeadRepo git://github.com/user/test.git
则您尚未向计算机添加任何内容。将其添加到远程分支中之后,您可以通过执行以下操作来获取该远程上所有分支的列表:
git fetch --all
提取(或提取)后,您下载文件,然后如果想要将同事的feature22分支分支到本地,则只需执行
git checkout -b myLocalFeature22 TechLeadRepo/feature22
如果您克隆了他的存储库,那么您将不得不进入该本地存储库的目录,仅checkout
进入所需的分支