Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.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_Git Rebase_Git Revert - Fatal编程技术网

从远程git历史记录中删除我不知道的提交';我在本地没有

从远程git历史记录中删除我不知道的提交';我在本地没有,git,github,git-rebase,git-revert,Git,Github,Git Rebase,Git Revert,一名团队成员意外地向我们的主分支提交了超过1GB的文件,并将其推送到了源。我已经从源代码管理中删除了它,并致力于master。但是,所有其他正在更新代码的合作者(通过git pull)实际上都在下载这些文件作为历史记录的一部分 我想完全从历史中摆脱这一承诺。我想,如果我能访问团队成员的计算机,这会容易得多,但目前我没有。那么,有没有一种方法可以做到这一点,而不必从远程调出最新版本呢?我假设您有一份回购协议的副本,但您没有大提交的最新版本。您可以使用git push-f将副本推送到repo,以完全

一名团队成员意外地向我们的主分支提交了超过1GB的文件,并将其推送到了源。我已经从源代码管理中删除了它,并致力于master。但是,所有其他正在更新代码的合作者(通过git pull)实际上都在下载这些文件作为历史记录的一部分


我想完全从历史中摆脱这一承诺。我想,如果我能访问团队成员的计算机,这会容易得多,但目前我没有。那么,有没有一种方法可以做到这一点,而不必从远程调出最新版本呢?

我假设您有一份回购协议的副本,但您没有大提交的最新版本。您可以使用git push-f将副本推送到repo,以完全覆盖其他repo提交并从那里继续

酷。是的,我没有那个承诺,所以我想尽量避免。问题是她后来写了更多的代码,那么做
push-f
会不会把它吹走呢?@john-当然。现在,她的工作是确保一旦回购协议处于适当状态,就推动回购。代码将从服务器上被吹走,但当然将保留在她的本地回购协议上,并且她必须能够重新设置基址/拉入和推入。我不知何故设法进行了部分拉入(
git-pull-origin-master
,然后是
CTRL+C
)。它没有下载文件,但是更新了我的历史记录。所以我能够做一个
rebase
来获得提交,并
将-f
推送到master。