这是我与GIT的第一天,所以我有几个基本问题。
1)假设我有一个名为" Projects"而且里面有20个不同的项目供不同的客户使用,等等。其中"项目-1"和"项目-2"。
我应该在哪里建立我的存储库? "项目"或者我应该单独从每个文件夹中创建一个存储库?
2)好的,我做了一个回购。现在我想做一个分支,我成功了。现在我在哪里可以看到我的分支文件?我希望在回购中有不同的文件夹 - 主分支和我在此过程中创建的其他文件夹。
答案 0 :(得分:3)
你显然是从svn或者喜欢 svn的东西来git。
在svn中,一切都基于文件夹 - 分支,标签和存储库都成为文件夹;您的仓库中的每个子文件夹都可以有效地成为它自己的仓库,依此类推。
根据我的经验,版本控制模型对于svn来说是独一无二的。您不能在其他地方应用相同的模型。
Git,特别是基于提交(实际上,对象,其中提交是一种对象,但是为了更容易的心理模型开始,让我们考虑一下提交)< / p>
您的存储库是提交树。与svn不同,提交可以有多个父级。
与svn不同,Git也是分布式的,即使你以集中式存储库类型的方式使用它,这种区别也很重要。当你推送和拉入git时,你只是将你拥有的提交树与一些远程提交树同步。
然而在svn中你有一个存储库,并且你在本地有一个工作副本,在git中,你克隆了存储库。你在本地拥有的是一个独立的存储库,它可以拥有自己的提交和分支,而其他人可以克隆。
所以(最后)回答你的问题:
.git
中的某处松散;直接查看这些文件通常没有帮助,而是使用git branch
之类的命令列出分支或git checkout
来更改分支。如果你想更深入地了解git是如何工作的,我建议你阅读一些Git from the inside out。没有必要使用 git,但我发现有一个相当准确的git做错的心理模型使得它的行为不那么令人惊讶。
答案 1 :(得分:1)
1)为不同的项目提供单独的Git存储库是一种常见做法。这意味着您可以单独开发每个项目,而不必担心覆盖对一个项目所做的更改,如果您必须将更改还原为另一个项目。
2)如果你是Git的新手,我暂时不会担心分支机构。如果您确实创建了分支,则无法在单独的文件夹中看到它们。跟踪分支的魔力隐藏在每个存储库的.git文件夹中。
您可以通过键入git branch
来查看您所在的分支。您可以使用git branch -a
查看所有分支。