【问题标题】:why does git recommits all files even the ones that I did not change为什么 git 会重新提交所有文件,即使是我没有更改的文件
【发布时间】:2015-07-22 23:29:51
【问题描述】:

我正在为一个项目做贡献并分叉了他们的存储库。

我花了几天时间编写一些新功能,当我将我的更改提交到 github 时,每一个罚款都会重新提交..即使我没有更改文件..

为什么会这样,我是 vagrant 和 git 的新手。

我的工作流程如下:

cd 进入项目:

/rails_projects/my_project

vagrant up

vagrant ssh

cd /vagrant

*****在此处对我的代码进行一些更改

git add .
git commit -m "asdfsdf"
git push

我对 vagrant 或 git 有什么遗漏吗?我在 Windows 上运行建议的 ubuntu 虚拟框。也许我必须在父目录而不是我的项目目录中创建虚拟框?或者是什么交易?还是我应该从不同的目录运行 git 命令?

谢谢

【问题讨论】:

  • 你能具体介绍一下这个项目吗?也许还可以解释为什么您认为git 正在提交所有文件。您的设置看起来不错,所以应该可以工作,但是如果没有更多信息,这真的很难说。
  • 在运行 git add . 之前尝试运行 git status 并显示其输出。另外,您的一般工作流程是什么?您是否在会话之间运行vagrant destroy,然后重建盒子并将文件夹与您的项目同步?这可能会导致这种情况发生。

标签: ruby-on-rails git vagrant vagrantfile vagrant-windows


【解决方案1】:

所以最终发生的事情是我不得不这样做

cd ..

退出 /vagrant 文件,然后也

exit

退出 vagrant ssh 会话。

然后我致力于 github,一切都很好。谢谢!

【讨论】:

    【解决方案2】:

    为他人澄清。 看起来您正试图从您的 Vagrant 框中提交代码。正如 OP 已经发现的那样,您不想这样做(因为本地 Git 存储库位于您的计算机上,而不是 Vagrant 为您管理的虚拟机内)。

    就个人而言,我为 Git 打开了一个终端窗口,为 Vagrant 打开了另一个终端窗口。这可以防止这个问题中描述的问题。

    额外提示:如果您使用 Mac 进行开发,您可以在终端中按 Command + T 打开一个新标签。可惜你不能在 Windows 上做到这一点......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-20
      • 2011-06-02
      • 2019-03-08
      • 2022-01-21
      • 1970-01-01
      • 2019-07-01
      • 1970-01-01
      相关资源
      最近更新 更多