我来自SVN背景,我很难掌握Git的哲学。特别是,我对以下内容感到困惑。
想象一下,我在工作目录上做了一些改变。如果我切换到另一个分支,从SVN的角度来看,更改仍然是,这是非常不寻常的。
这意味着未提交的更改在分支之间共享。
此外,"阶段属性"这些文件在分支之间也是共享:如果我在一个分支中调用git add *
,那么所有文件都将被添加到所有分支中的下一个提交中。
看起来我的分支机构只有已经已提交文件才有所不同。
因此,如果未提交的数据是共享,那么,无论我现在在哪个分支,我都会提交所有暂存的文件,即使它们已被添加到不同的分支!当我来自SVN背景时,这让我非常奇怪。
我是对的,还是我只是困惑? 为什么Git以这种方式工作?
有时候,Git告诉我这样的事情:
无法切换到另一个分支,因为您的更改将被删除。先做好准备。
在SVN中,这不是问题:分支独立。为什么以及何时在Git中发生这种情况?
Git处理文件夹的方式是什么?如果我创建一个新文件夹,它不会显示在Git的状态报告中。 Git根本不关心文件夹吗?
答案 0 :(得分:0)
欢迎来到GIT :) 有一种Git方式,它与SVN方式不同
要点: