假设未更改的文件未出现在EGit Staging View中

时间:2015-10-14 07:55:34

标签: eclipse git egit

有没有办法找到我设置的文件'假设未改变'?

我已经修改了几个文件并想拉,所以我将它们设置为“假设不变”#。现在我已经完成并希望提交,但它们不会出现在 Git Staging 窗口中。

我使用Eclipse 4.4.2。

4 个答案:

答案 0 :(得分:3)

嗯,它们不会出现在临时视图中是正确的。来自git docs

  

当“假设未更改”位置位时,用户承诺不更改文件并允许Git假定工作树文件与索引中记录的文件匹配。

如果您想“重新跟踪”更改,请执行git update-index --no-assume-unchanged <file>

在Eclipse中,其工作原理如下:右键单击文件&gt;团队&gt;高级&gt;不假设不变。完成此操作后,该文件将显示在 Git Staging View Unstaged Changed 部分。

答案 1 :(得分:3)

假设未设置标志设置的文件用一点蓝色复选标记装饰,请参阅首选项&gt;团队&gt;标签装饰

答案 2 :(得分:0)

除了让这些文件受版本控制外,还有一点可能对您有所帮助。 当您丢失标记为-假定未更改的文件的概述时,您希望获得这些文件的列表。

您可以通过命令行并执行[Can I get a list of files marked --assume-unchanged?]中提到的以下行来获取此列表:

SELECT *,
  TIME_FORMAT(SEC_TO_TIME(UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(LastUpdated)),'%Hh %im') AS tt
FROM form_data
ORDER BY id

所以您会得到如下输出:

git ls-files -v | grep '^[[:lower:]]' 

但是请注意,您在路径上需要提到的命令(h path/to/ignored.file h another/ignored.file git)。 在Windows中安装它们的最简单方法是使用chocolatey.org:以Powershell作为管理员并执行以下命令:

grep

这将安装巧克力。然后,如果仍然需要安装git:

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

然后安装grep:

choco install git

就是这样。

答案 3 :(得分:0)

由于eclipse使得尝试在Git Staging视图中单击“用HEAD修订版替换”时意外地单击“假定未更改”选项非常容易,因此我需要使用上述答案的组合。

一个,要查看所有文件,我运行了以下文件(感谢@ armin.midel):
git ls-files -v | grep '^[[:lower:]]'

使用以下命令删除文件(感谢@ s.d。):
git update-index --no-assume-unchanged <file>