我想要删除项目中的文件,并且我希望删除该文件,以便其他人也可以在项目工作时删除它们.
当我们开始时,所有同事在他们的树中都有一个文件"testfile",并且在同一个分支上.
如果我删除文件:
%git rm testfile
%git commit -a
%git push
然后我的同事拉了这个提交:
%git pull
%ls testfile
testfile
为什么这个文件仍然在这里,我该怎么做才能摆脱它.死!
我不得不说'它对我有用'.我认为您需要发布有关您的设置,确切用法以及您获得的任何输出或错误消息的更多详细信息,因为它应该有效.
$ 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/
Run Code Online (Sandbox Code Playgroud)