我有1 git repository
个branches
标准master
分支和dev
分支创建了git checkout --orphan dev
我然后删除了这个分支中的所有内容git rm -rf .
然后我运行了commit
和checkout master
我在一个文件中添加了一个包含所有数据库信息的分支,并且打算使用git作为未跟踪的文件。当我checkout dev
文件也在那里时,我修改文件并决定尝试checkout master
以及发生了什么?那里的文件也改了......
所以我需要做的是弄清楚如何阻止所有文件在具有完全不同历史记录的分支之间迁移,无论它们是否被跟踪。我不确定如何解决这个问题,或者甚至可能做到这一点 - 所以对此有任何帮助表示赞赏。
答案 0 :(得分:0)
git checkout
会保留对未首先提交的本地文件的更改。
To prepare for working on <branch>, switch to it by updating the index and the
files in the working tree, and by pointing HEAD at the branch. **Local
modifications to the files in the working tree are kept**, so that they can be
committed to the <branch>.
这似乎包括首先未跟踪的文件。 -f
选项忽略了这一点,因此所有本地更改都将被丢弃。这似乎是你想要的。