我在两台计算机上运行Git,机器A(OS X)和机器B(Windows 10),同时在Github上进行远程托管。我在机器A和B上的本地工作目录都已与Google云端硬盘同步。
前几天我注意到,无论何时对机器A进行一次提交(即使没有发生任何更改),机器B突然都修改了需要暂存和提交的文件。
[Java] The method toArray(T[]) in the type List<Integer> is not applicable for the arguments (char[])
一旦我在机器B上运行以下命令,
$ git status
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: README.md
modified: helper_scripts/scriptA.py
modified: helper_scripts/scriptB.py
modified: helper_scripts/scriptC.py
modified: helper_scripts/scriptD.py
no changes added to commit (use "git add" and/or "git commit -a")
我在机器B上收到以下消息:
git add .
git commit -m 'some message'
然后,我在机器A上检查$ git status
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
nothing to commit, working tree clean
,并且整个过程一次又一次地重复...这似乎是不正常的行为,因为我没有对文件进行任何更改。我猜想Google云端硬盘同步是导致问题的原因。
如何让Git,GitHub和Google云端硬盘一起玩得开心,以免我陷入这种恶性循环?
答案 0 :(得分:2)
别这样。
您的git repo遭到破坏只是时间问题,您将失去工作。认真地,找到一种更好的方式来备份您的工作。
答案 1 :(得分:1)
首先仔细检查计算机B(Windows)中报告的差异的性质
使用新的同步存储库重试,但这一次是在 (在Windows上)第一次输入后完成的
git config core.autocrlf false
这将阻止Git对文件进行一些自动修改以更改eol样式(LF与CFRL行尾)