git SourceTree中停止跟踪和丢弃文件有什么区别

Mis*_*tyD 31 git atlassian-sourcetree

我想知道丢弃文件和使用source-tree停止在git中跟踪文件之间的区别.如果我在更新的代码中删除了一个文件并且我希望在存储库中删除该文件,那么我应该将其标记为停止跟踪,还是应该在提交过程中将其丢弃

Ken*_*yon 56

第一个答案未涵盖的一个细节是停止跟踪不会删除本地文件.它只从源代码控制中删除它.

  1. 如果要在本地保留文件(可能是存储了您认为不应该在源代码管理中的Visual Studio设置的.suo文件)但是将其从存储库中删除,则应使用" 停止跟踪".在此之后,如果您看到Unstaged文件中列出的文件,则可以使用右键单击>忽略...在SourceTree中更新.gitignore文件以在将来忽略该文件.
  2. 如果要在本地和存储库中删除文件,则应使用" 删除".(使用SourceTree术语)
  3. 最后,如果您只想在不
    更改存储库的情况下还原本地更改,请使用Discard.


Dav*_*sch 31

在SourceTree中,选择文件中的"discard"只会丢弃您的本地更改; 停止跟踪将其从存储库中删除.但是,只要您删除了本地驱动器上的文件,并且您可以在SourceTree的"Staged Files"部分中看到该删除,那么当您提交时,它也将在存储库中删除.