Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.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-rm”之后,为什么当一个同事拉动时该文件仍然存在?_Git - Fatal编程技术网

在“git-rm”之后,为什么当一个同事拉动时该文件仍然存在?

在“git-rm”之后,为什么当一个同事拉动时该文件仍然存在?,git,Git,我想删除一个项目中的一个文件,我想在其他人拉项目时删除该文件 当我们开始时,所有的同事在他们的树中都有一个文件testfile,并且都在同一个分支上 如果使用以下命令删除文件: %git-rm测试文件 %git提交-a %git推送 然后我的同事做出了以下承诺: %吉特拉力 %ls测试文件 测试文件 为什么这个文件还在这里,我能做些什么来摆脱它。死 我不得不说‘这对我很有用’。我认为您需要发布更多关于您的设置、确切用法以及您收到的任何输出或错误消息的详细信息,因为它应该可以工作 $ git --

我想删除一个项目中的一个文件,我想在其他人拉项目时删除该文件

当我们开始时,所有的同事在他们的树中都有一个文件testfile,并且都在同一个分支上

如果使用以下命令删除文件:

%git-rm测试文件 %git提交-a %git推送

然后我的同事做出了以下承诺:

%吉特拉力 %ls测试文件 测试文件


为什么这个文件还在这里,我能做些什么来摆脱它。死

我不得不说‘这对我很有用’。我认为您需要发布更多关于您的设置、确切用法以及您收到的任何输出或错误消息的详细信息,因为它应该可以工作

$ git --git-dir=common.git init --bare
Initialized empty Git repository in /rmtest/common.git/

$ git clone common.git a
Initialized empty Git repository in /rmtest/a/.git/
warning: You appear to have cloned an empty repository.

$ git clone common.git b
Initialized empty Git repository in /rmtest/b/.git/
warning: You appear to have cloned an empty repository.

$ cd a
$ touch testfile
$ git add testfile
$ git commit -m initial
[master (root-commit) be09b47] initial
 0 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 testfile

$ git push origin master
Counting objects: 3, done.
Writing objects: 100% (3/3), 213 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
To /rmtest/common.git
 * [new branch]      master -> master

$ cd ../b
$ git pull
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From /rmtest/common
 * [new branch]      master     -> origin/master

$ git rm testfile
rm 'testfile'

$ git commit -m "removed testfile"
[master 53b13de] removed testfile
 0 files changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 testfile

$ git push origin master
Counting objects: 3, done.
Writing objects: 100% (2/2), 202 bytes, done.
Total 2 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (2/2), done.
To /rmtest/common.git
   be09b47..53b13de  master -> master

$ cd ../a
$ git pull
remote: Counting objects: 3, done.
remote: Total 2 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (2/2), done.
From /rmtest/common
   be09b47..53b13de  master     -> origin/master
Updating be09b47..53b13de
Fast forward
 0 files changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 testfile

$ ls
.git/

在错误的分支上工作时,我也有同样的行为。确保你推到你的同事拉的同一个分支。 尝试git branch-a来显示本地和远程分支,并最终删除错误的远程或本地分支git branch-r-d来删除远程分支


如果没有任何帮助,您无法找到解决方案,请从您或您的同事的工作存储库克隆一个新存储库,然后再次进行测试。

您确定双方都在推送/拉送同一分支吗?您确定同事的工作目录中没有testfile modifid吗?您是否知道您不必实际写入+1,有一个小箭头的东西,你可以投票后向上或向下。grin@Jacob:我不知道你的情况,但我认为这是一个反馈,我想知道投票的原因