Git新文件出现在所有分支中

Don*_*n P 4 git merge branch commit rebase

我认为在合并或重新分支分支之前,在一个分支上创建的文件不会出现在任何其他分支中?

例:

我有两个分支:

  1. new_contact_page

我签出了new_contact_page分支.

$ git checkout new_contact_page
Run Code Online (Sandbox Code Playgroud)

然后我创建一个新文件.

$ vi contact_page.html
Run Code Online (Sandbox Code Playgroud)

没有做任何Git命令,我切换回我的分支.

$ git checkout master
Run Code Online (Sandbox Code Playgroud)

然后我看到这个contact_page.html文件也在我的分支中.

$ ls   (contact_page.html shows up in the list!)
Run Code Online (Sandbox Code Playgroud)

该文件不应该只存在于new_contact_page分支中吗?

SLa*_*aks 6

Git永远不会触及任何实际上不在您的存储库中的文件.(未跟踪的文件)

您需要先git addgit commit文件(进入一个分支).

  • @DonnyP:更确切地说,直到你这样做,它才会存在于_any_ branch中 - 它只会残留在本地文件系统上. (4认同)