所以我做了我的文件更改,但是当我尝试推送它们时,源代码树抱怨其他人在我之前推送。文件不同,但我被迫合并更改。有时我必须备份并重置我的工作区才能让我再次推送 有没有办法强行推动?
答案 0 :(得分:4)
Preferences
Advanced
Allow force push
下次推送时,会有一个额外的复选框:Force push
。
检查它还会在实际执行强制推送之前显示另一个Confirm Force Push
对话框。
答案 1 :(得分:0)
即使文件不同,您也必须在推送之前执行合并或rebase。在更新之前,必须将当前工作分支的提交合并到服务器上存在的当前分支中。您正在合并分支,而不是文件。
使用“force push”命令不会强制您的提交另外应用于远程分支上的内容 - 它会强制您的提交替换提交在远程分支上。使用此选项会丢弃其他用户提交的所有提交。
因为这是一种破坏性的操作,SourceTree does not include GUI access to the "force push" command。以下是Atlassian的Steve Streeting所说的:
SourceTree不公开强制推送,因为它几乎总是不你想要做什么。
这意味着其他人已经向你推了推。你应该做的是拉动他们的变化,合并它们(或者在它们之上重新定义你的变化),然后推动。