Mercurial (프로젝트 main
)에 의해 버전 관리되는 프로젝트가 있습니다. 프로젝트는 sub
의 파일을 가리키는 main
의 기호 링크로 다른 프로젝트 (sub
)의 일부 파일을 참조 (사용)합니다. 심볼릭 링크는 main
의 저장소에 추가됩니다.Mercurial이 심볼릭 링크 대상 변경을 감지하는 방법
문제는 Mercurial이 sub
에서 대상 파일의 변경 사항을 감지하지 못하고 심볼 링크를 'M'(수정 됨)으로 표시하지 않는다는 것입니다.
는, 초기화 생성 초기의 repos 커밋 : 지금
$ mkdir crap
$ cd crap
$ mkdir main sub
$ cd sub
$ nano sub.txt
$ hg init
$ hg add sub.txt
$ cd ../main/
$ nano main.txt
$ ln -s ../sub/sub.txt ./sub.txt
$ ls -la
total 24
drwxrwxr-x 2 ruslan ruslan 4096 Jan 15 12:51 .
drwxrwxr-x 4 ruslan ruslan 4096 Jan 15 12:48 ..
-rw-rw-r-- 1 ruslan ruslan 20 Jan 15 12:51 main.txt
lrwxrwxrwx 1 ruslan ruslan 14 Jan 15 12:51 sub.txt -> ../sub/sub.txt
$ hg init
$ hg add main.txt sub.txt
$ hg commit -m "First"
$ cd ../sub
$ hg commit -m "Sub First"
$ hg status ./sub -A
C sub/sub.txt
$ hg status ./main -A
C main/main.txt
C main/sub.txt
수정하고 sub
의 대상 커밋 : 현재 상태를
$ nano ./sub/sub.txt
$ hg status ./sub -A
M sub/sub.txt
$ hg commit ./sub -m "Modified"
$ hg status ./sub -A
C sub/sub.txt
을
상황은 다음 예에 표시됩니다 main
의 경우 대상을 참조하는 심볼릭 링크가 'M'으로 표시되어 있지 않음을 보여줍니다.
$ hg status ./main -A
C main/main.txt
C main/sub.txt
main
에 sub
아니라에서 커밋 쇼 'M'없이 다시 sub
수정 :
$ nano ./sub/sub.txt
$ hg status ./sub
M sub/sub.txt
$ hg status ./main -A
C main/main.txt
C main/sub.txt
어떻게 제대로 의욕이 심볼릭 링크 '목표의 변화를 감지 할 수 있습니까?
리포지토리를 상호 참조하는 방법에 대한 제안 사항은 무엇입니까? – mbaitoff
당신이 할 수있는 한 가지는 main의 subrepo로 서브가 있습니다. – Mathiasdm