git:仅适用于*部分*文件

时间:2018-07-28 15:24:03

标签: git git-bare

我基本上按照here的描述在裸仓库中跟踪自己的dotfile。

当我要进行更改时,将在我的机器之间共享

  • 在与我所在的计算机相对应的任何本地分支中进行更改;
  • 结帐主机(在本地分支中所做的更改通常仍然可以通过git-status看到);
  • 从那里推;
  • 返回本地分支,然后
  • 合并母版。

通过这种方式,我可以区分所有机器通用的全局点文件和特定于单个机器的全局点文件。特定计算机的窗口管理器等。

我的问题:

在一台特定的计算机上,对本地分支中的 some 文件进行更改,然后尝试在

中检出主结果

error: Your local changes to the following files would be overwritten by checkout: .bashrc Please, commit your changes or stash them before you can switch branches. Aborting

我知道git-stash并可以使用它来实现所需的功能,但是我对为什么会发生这种情况感到困惑,并想了解这一点。

我仅在一台计算机上遇到了该错误,该计算机的v.2.7.4版本为git(如果我正在运行的那台计算机未显示问题,则正在运行v2.14.4,以防万一。)

此外,它仅在以下文件中发生:我的.bashrc如上所示,但是在某些情况下,我也可以修改本地分支上$HOME/bin文件夹中的脚本,无需隐藏就可以结帐母版,并且仍然这些更改将以git status显示。我无法检测到有关哪个文件执行此操作的模式(到目前为止,我认为它可能与.bashrc一起发生,但我不确定)。

摘要:

checkout master,而不在某些计算机上提交或存储更改错误,而在其他计算机上则没有错误,有些文件却没有。

我想了解原因。

0 个答案:

没有答案