我想知道在我已经提交但未推送时是否以及如何创建新分支。
情景:
基本上我被告知这是不可能的,并且必须在创建新分支之前推送。由于我做了两天的工作(比如10次提交)并得出结论我宁愿创建一个新的分支,而不是将这些更改推送到master(我希望之前进行额外的测试,因为更改变得比预期的更大)
我是否需要保存所有mal文件,重新检查我开始使用的主版本,从中创建一个新分支并恢复我的更改并重新发送或者我可以创建一个我原先想到的新分支(所以我不在乎起初)?
答案 0 :(得分:2)
基本上我被告知这是不可能的,并且必须在创建新分支之前推动。
绝对不是这样。您可以随时创建新分支。例如,在您提交更改后,您可以运行:
git checkout -b newbranch
这将根据当前提交创建一个名为newbranch
的新分支。如果要在此操作中恢复master
分支(即,您希望仅在新分支上进行更改,而不是在主分支上),则可以执行此操作:
# create a new branch, but don't switch to it
git branch newbranch
# Reset current (master) branch by discarding the most recent
# commit.
git reset --hard HEAD^
# Switch to new branch
git checkout newbranch
现在您可以将新分支推送到远程服务器。
答案 1 :(得分:0)
你可以做一个git branch new_branchname
。默认起始位置为HEAD
。如果您愿意,可以将其作为第二个参数添加到git branch
。
你现在所拥有的是新提交仍然存在于master
,在我看来这不是最终意图。您需要revert
甚至reset
(因为它没有被推,这很好)。
答案 2 :(得分:0)
Create a branch with your latest commits:
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) {
if (request == null)
throw new ArgumentNullException("request");
//Breakpoint is hit
return base.SendAsync(request, cancellationToken);
}
Reset your git branch newbranch
r branch to the server state:
maste
Check out the git reset --hard origin/master
:
newbranch
答案 3 :(得分:0)
if not aList