2009-10-13 1 views
0

프로젝트에서 파일을 삭제하고 싶습니다. 프로젝트를 가져 오는 다른 모든 사람들도 해당 파일을 삭제하려고합니다."git rm"다음에 동료가 끌어 올 때 그 파일이 여전히 존재합니까?

시작할 때 모든 동료는 트리에 "testfile"파일이 있고 같은 분기에 있습니다.

내가 가진 파일을 제거하는 경우 :

퍼센트의 자식 :

% 자식은 rm testfile 위
%의 자식이 -a
%의 자식 푸시

커밋은 그런 내 동료는이 커밋 끌어 끌어 오기
% ls 테스트 파일
테스트 파일

왜 이 파일이 여기에 있으며, 제거하려면 어떻게해야합니까? 주사위!

+1

둘 다 동일한 지점에서 밀거나 당기시겠습니까? –

+0

동료가 작업 디렉토리에 testfile 수정 코드를 가지고 있지 않습니까? –

답변

8

나는 그것이 '나를 위해 일한다'고 말해야 만합니다. 난 당신이 당신의 설치, 정확한 사용 및 출력이나 오류 메시지가 작동해야하기 때문에 점점 더 많은 세부 사항을 게시해야한다고 생각합니다.

$ 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/ 
+1

+1 실제로 이것을 테스트합니다. –

+0

실제로 +1을 쓰지 않아도된다는 사실을 알고 계셨습니까? 게시 한 곳을 위 또는 아래로 투표 할 수있는 작은 화살표가 있습니다. * 웃어 * – Jacob

+0

@ Jacob : 너에 대해 모르겠다.하지만 나는 의견과 같은 것을 본다. 나는 upvoting의 이유를 알고 싶어한다. – alexandrul

2

잘못된 분기에서 작업 할 때 동일한 문제가있었습니다. 동료가 당기는 지점과 동일한 지점으로 밀어야합니다. "git branch -a"를 사용하여 로컬 및 원격 분기를 표시하고 결국 잘못된 (원격 또는 로컬) 분기를 삭제하십시오 (원격 분기 삭제의 경우 git branch -r -d).

아무 도움이되지 않고 해결책을 찾을 수없는 경우 동료 (또는 동료) 작업 저장소에서 새 저장소를 복제하고 다시 테스트하십시오.

관련 문제