虽然我发现类似的问题,我没有find我的问题的答案 当我尝试重新命名目录从FOO到foo通过git mv FOO foo我得到 fatal: renaming 'FOO' failed: Invalid argument 好。 所以我试试git mv FOO foo2 && git mv foo2 foo 但是当我尝试通过git commit . 我明白了 # On branch master # Untracked files: # (use "git add <file>…" to include in what will be committed) # # foo nothing added to commit but untracked files present […]
这究竟是怎么发生的? 目前我正在一个回购工作中,所以这是我的工作stream程: 更改文件 承诺 重复1-2直到满意 推到主 然后当我做一个git status它告诉我,我的分支在X提交前面 (大概是我提交的提交数量相同)。 是因为当你推动代码时,它实际上并没有更新你的本地caching文件(在.git文件夹中)? git pull似乎'修复'这个奇怪的消息,但我仍然好奇为什么会发生,也许我使用Git错误? 包括邮件中打印的分支 我的本地分支在主人之前 你在哪里推/拉当前分支 我正在向GitHub求助,并将其拉到那个时候正在处理的计算机上,我的本地副本总是最新的,因为我是唯一一个正在处理这个问题的人。 它实际上不检查远程回购 这是我的想法,我想我会确保我的理解是正确的。 你是否传递了一些额外的参数? 不是我可以看到的,也许有一些有趣的configuration在我的最后? $ git status # On branch master # Your branch is ahead of 'origin/master' by 1 commit. # nothing to commit (working directory clean)
下面的实线我的原始问题。 我有一个文件夹在我的本地目录未跟踪。 当我运行git status ,我得到: Changed but not updated: modified: vendor/plugins/open_flash_chart_2 (modified content, untracked content) 当我键入git add vendor/plugins/open_flash_chart_2然后再次尝试git status ,它仍然说untracked。 这是怎么回事? 这里是我最近半小时的简单总结: 发现我的Github回购没有跟踪我的vendor/plugins/open_flash_chart_2插件。 具体来说,没有内容,它显示文件夹图标上的绿色箭头 。 尝试git submodule init No submodule mapping found in .gitmodules for path 'vendor/plugins/open_flash_chart_2' 尝试git submodule add git://github.com/korin/open_flash_chart_2_plugin.git vendor/plugins/open_flash_chart_2 vendor/plugins/open_flash_chart_2 already exists in the index git status modified: vendor/plugins/open_flash_chart_2 (untracked content) 在我的仓库/本地目录中find任何名为.gitmodules文件,但找不到。 […]
我已经尝试了Cygwin上的msysGit和Git。 两者都可以正常工作,完美地运行gitk和git-gui。 现在,我怎么configuration一个mergetool? (Vimdiff在Cygwin上工作,但是最好我喜欢一些对我们的Windows爱好者同事更友好的东西。)
使用git rebase –interactive <commit> ,可以将任意数量的提交压缩成一个。 除非你想压缩到最初的提交,否则这很好。 这似乎不可能做到。 有什么办法可以实现吗? 中等相关: 在一个相关的问题上,我想出了一个不同的方法来解决第一个犯下这个问题的必要性,也就是把它作为第二个犯。 如果你感兴趣: git:如何插入一个提交作为第一,转移所有其他?
我怎么能回滚到git的具体提交? 有人可以给我的最好的答案是使用git revert X次,直到我达到所需的提交。 所以我们假设我想恢复到20提交的提交,我必须运行20次。 有没有更简单的方法来做到这一点? 我不能使用重置,因为这个存储库是公共的。
我的编辑正在改变我的源文件的行尾。 当我做git diff ,我看到同一行两次 – 一次用-和一次用+ – 没有明显的区别。 我如何得到git diff来向我展示这个变化实际上是什么?
我假设两者都以相同的方式工作。 都将每个文件添加到索引。 但我似乎错了。 git add .什么区别git add . 和git add -u ?
如果我修改一个子模块,我可以将提交推回到子模块的起源,还是需要一个克隆? 如果克隆,我可以在另一个存储库中存储一个克隆?
是否有可能让gitlab设置自动同步(镜像)托pipe在另一个位置的存储库? 目前,我知道这样做的最简单的方法是手动推送到两个(gitlab和其他)存储库,但这是非常耗时且容易出错的。 最大的问题是镜像可以重新同步,两个用户同时将更改推送到两个不同的存储库。 我可以想出的最好的方法来防止这个问题是确保用户只能推送到其中一个存储库。