这是我执行任何操作之前本地分支的状态:
B <-A ...
这是遥控器:
B <-A ...
我在存储库上运行git add -A
,发现它花费的时间太长。原来,我没有忽略带有大型开发工件的目录v3
。因此,我运行git reset HEAD^
来使索引看起来像运行add
之前的样子,然后将v3
目录添加到.gitignore
中,再次运行add
并提交了更改(称为提交C)。
当我尝试将东西推到远程时,Git开始抱怨。结果是在运行reset HEAD^
却还没有做任何事情的情况下,我跳回了很远的历史,本地分支如下所示:
C <-A ...
这会造成一个冲突,其中远程拥有B而本地没有。我必须运行的正确命令是git reset HEAD
。我该如何解决?
答案 0 :(得分:1)
所以我运行了git reset HEAD ^以使索引看起来像在运行add之前一样
应该是git reset
(git reset HEAD
的缩写)
尝试git reflog
来查看HEAD
在git重置之前是什么,然后git重置为该提交。
首先保存您的工作,以防万一这些命令无法按预期运行。
答案 1 :(得分:0)
您只需要将更改重新部署到远程分支上即可。
假设您正在使用远程var plans = await graphServiceClient
.Me
.Planner
.Plans
.Request()
.GetAsync();
foreach (var plan in plans)
{
Console.WriteLine($"{plan.Title} ({plan.Id})");
var tasks = await graphServiceClient
.Planner
.Plans[plan.Id]
.Tasks
.Request()
.GetAsync();
foreach (var task in tasks)
{
Console.WriteLine($"{task.Title} ({task.Id})");
}
}
在master
上工作,只需执行以下操作:
origin/master
并且它将C移到B之后而不是A之后。