Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git推送的子树远程推送整个回购,如何撤销?_Git_Github - Fatal编程技术网

git推送的子树远程推送整个回购,如何撤销?

git推送的子树远程推送整个回购,如何撤销?,git,github,Git,Github,我将我的回购转换为我的回购。命令 $ git remote add -f node git@github.com:feklee/feklee-node.git $ git merge -s ours --no-commit --allow-unrelated-histories feklee-node/master $ git read-tree --prefix=node/ -u node/master $ git commit # done from Emacs Magit IIRC $ m

我将我的回购转换为我的回购。命令

$ git remote add -f node git@github.com:feklee/feklee-node.git
$ git merge -s ours --no-commit --allow-unrelated-histories feklee-node/master
$ git read-tree --prefix=node/ -u node/master
$ git commit # done from Emacs Magit IIRC
$ mv node/ nodes/pcb/
然后我在reposan中做了一些更改,我想将子树中的更改返回到feklee节点。所以我做了(这显然是个坏主意):

这将san的全部内容推送到了feklee节点。哦,不

我如何撤销这个巨大的git推送

我还想知道如何只推子树

更新 我返回到一个旧的提交,重写历史:

$ git reset --hard 87b2d1aaea1c0a628c4725e2ea16682f344f102e
$ git push --force

在这里,我很幸运,因为在大规模推出之前,我仍然有一个浏览器选项卡打开,其中包含GitHub repo。它显示了上面的散列。

以便撤消提交使用

git revert
仅推送到子树应如下所示:

git subtree push --prefix=my/folder subtree_origin master

但我想撤销大规模的multi-MB推送(multi-mbpush),以恢复到以前的状态,这是一个小型的、轻量级的回购协议,我与另一个用户的数据保持同步。
git subtree push --prefix=my/folder subtree_origin master