标签: commit

cherry-pick一个提交并保留原始的SHA代码

我想在保留它的原始SHA提交代码的同时在提取的遥控器上挑选提交(我当前的分支基于这个我重置为先前状态的遥控器).

git commit sha cherry-pick

47
推荐指数
5
解决办法
2万
查看次数

从将提交的列表中删除文件

我在git存储库中有一个已更改文件的列表.目前有一个我不想提交的文件.我可不可以做:

git commit -a
Run Code Online (Sandbox Code Playgroud)

提交所有文件然后以某种方式从当前提交中删除该文件?删除后,它仍然应该在未提交的文件列表中.

git file commit

46
推荐指数
4
解决办法
11万
查看次数

如何更正"提交失败.文件xxx已过期.找不到xxx路径."

关于在subversion中提交合并的结果,我最近遇到了一个特别棘手的问题.我们的Subversion服务器是@ 1.5.0,我的TortoiseSVN客户端现在是@ ​​1.6.1.

我正在尝试将功能分支合并到我的主干中.合并似乎工作正常; 但是,提交失败,并显示以下错误消息.

Commit failed (details follow):
File 
'flex/src/com/penbay/invision/portal/services/http/soap/ReportServices/GetAllBldgsParamsByRegionBySiteResultEvent.as' 
is out of date
'/svn/ibis/!svn/wrk/531d459d-80fa-ea46-bfb4-940d79ee6d2e/visualization/trunk/source/flex/src/com/penbay/invision/portal/services/http/soap/ReportServices/GetAllBldgsParamsByRegionBySiteResultEvent.as' 
path not found
You have to update your working copy first.
Run Code Online (Sandbox Code Playgroud)

我的工作箱是最新的.我甚至检查了一个新的文件夹到另一个文件夹,以确保没有任何本地混乱混乱合并.我已经对此做了一些研究,我认为部分问题是用户错误.我认为我们的问题是:

  1. 我们让一些开发人员在1.5之前和之后的一些事务中使用subversion客户端.我相信这有可能破坏合并信息.
  2. 在其他分支中,我们已经执行了部分合并.也就是说,我们并不总是在分支的根处执行合并.这是为了便于在同一分支内更新Flex和.NET工作.
  3. 我们在我们的分支上执行了循环(反身)合并.之所以这样做是因为我们有多个并行分支,我们希望定期使用trunk中的最新代码更新我们的分支.

Subversion的书籍/团队明确不推荐所有这些内容.我们已经吸取了教训,现在已经了解了最佳实践.但是,我们首先需要合并并提交最新的分支.

什么是纠正我们遇到的问题的最佳方法?

删除主干和分支中的所有合并信息是否可行? 不,我已经这样做但它没有解决我上面的错误.

svn merge commit

45
推荐指数
4
解决办法
10万
查看次数

如何撤消合并(没有提交)?

我只是做了一个svn merge将更改从主干合并到分支:

$ svn merge -r328:HEAD file:///home/user/svn/repos/proj/trunk .
--- Merging r388 through r500 into '.':
A    foo
A    bar
   C baz1
   C baz2
U    duh
[...]
Run Code Online (Sandbox Code Playgroud)

但是有太多的冲突,所以我想撤消这个.

一种方法是提交然后合并.但由于冲突我无法承诺.在这种情况下撤消的最佳方法是什么?

svn merge commit undo

45
推荐指数
2
解决办法
5万
查看次数

在不同的分支上重播最后N个git提交

当我打算将它们提交给分支"master"时,我意外地在分支"测试"上做了10次提交."测试"分支上的其他提交是垃圾,所以我不想将它与"master"合并.相反,我只想重播master上的最后10次提交.

git version-control commit

44
推荐指数
2
解决办法
2万
查看次数

如何在git中反转提交?

我对git的工作原理并不熟悉.我错误地提交了一个提交,并希望将其恢复.我做了一个

git reset --hard HEAD~1
Run Code Online (Sandbox Code Playgroud)

当心Google员工: 这不仅会恢复提交,还会丢弃所有文件更改!

现在项目在我的机器上还原,但不在github上.如果我尝试推送此代码,我会通过1次提交得到错误"你的分支在'origin/master'后面,并且可以快速转发." 如何从github中删除此提交?

git commit github

43
推荐指数
4
解决办法
9万
查看次数

当git revert中止并显示错误消息时,我该怎么办?

好的,所以当我尝试恢复提交(使用Git)时,我有时会收到错误.我所做的就是

git revert <commit hash>

它给了我这样的信息:

error: could not revert <commit hash> <commit message>
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
Run Code Online (Sandbox Code Playgroud)

这是否意味着我应该使用git mergetool并解决任何冲突?一旦我这样做,我可以添加/ rm然后提交,并恢复完成?

git commit mergetool git-revert

43
推荐指数
2
解决办法
4万
查看次数

麻烦将上游更改合并回我的分支

我试图将上游更改合并到我的分支中时遇到冲突,我不知道如何解决它们.

我创建了自己的fork.我克隆了它.我对我的分支,承诺和推送的分支进行了更改.但后来主叉更新了,我尝试通过合并上游来更新我自己的fork:

$ cd repo-name
$ git remote add upstream git://github.com/username/repo-name.git
$ git fetch upstream
$ git merge upstream/master
Run Code Online (Sandbox Code Playgroud)

合并说文件存在一些问题,自动合并不起作用.它告诉我自己修复并重新合并.所以我实际上去了主叉的GitHub上的(上游)存储库,并将新文件的所有代码复制到我的fork上的文件中,并尝试再次合并.然后,git给了我这个错误:

致命:'merge'是不可能的,因为你有未合并的文件.请在工作树中修复它们,然后根据需要使用'git add/rm'标记解析并进行提交,或使用'git commit -a'.

我有什么争论吗?我做了些蠢事吗?"未合并的文件"是什么意思?合并文件的合并不是全部吗?在合并之前,我是否必须提交更改?

git merge conflict commit partial

42
推荐指数
4
解决办法
7万
查看次数

在控制台中显示完整的git commit消息

我正在尝试在控制台中输出完整的提交消息,但我能够收到消息,但是为了查看完整的消息,我必须继续调整控制台窗口的大小以显示更多信息.我在Windows上使用Cygwin.

我正在使用的命令是git log --pretty=full.

git logging commit

42
推荐指数
5
解决办法
3万
查看次数

你推动每一次提交吗?

我想,如果有人能给我更多关于使用git和远程存储库的细节.我还没有使用远程存储库.

对于本地存储库,您提交的更改可能不会太过于破碎.什么被推送到远程存储库?每个本地提交?或者完成的整体工作,然后与其他人的整体工作合并?我认为远程存储库的日志必须令人困惑,如果每个人都推送每个提交.

git push commit repository

42
推荐指数
4
解决办法
2万
查看次数