2009-07-03 3 views
2

처음에 Mercurial이 파일을 추적하고 디렉토리가 아닌 파일을 찾았을 때 조금 실망했습니다. (즉, repo에서 빈 디렉토리를 나타낼 수 없음을 의미합니다.) 그러나 실제로는 문제가되지 않는 것처럼 보이며 일부 일을 좀더 쉽게 해줍니다. 다른 SCM 시스템은 어떻습니까? (이 게시물을 편집하여 추가하십시오.) 디렉토리를 추적하지 않으면 어떤 장점이나 단점이 있습니까? (. 답변에서 별도로 각각주세요)SCM/VCS : 추적 디렉토리

수행 트랙 디렉토리 :

  • 서브
  • 바자/BZR
  • PlasticSCM
  • Accurev
  • 은 ClearCase
  • (하나 추가하십시오!)

하지 트랙 디렉토리 :

  • 의욕/HG
  • 자식
  • 억지로
  • (하나를 추가!)

답변

2

이것은 Mercurial book에서입니다 :

빈 디렉터리는 거의 유용하지 않으며 이며 효과를 얻기 위해 사용할 수있는 방해가되지 않는 해결 방법 이 있습니다. Mercurial의 개발자는 따라서 복잡도가 에 비하면 빈 디렉토리를 관리 할 가치가 없다고 느꼈습니다. 이 가져다주는 이점은 제한적입니다.

꽤 많이 다라고 생각합니다. VCS를 설계하면 몇 가지 결정을 내릴 수 있습니다. Mercurial의 경우, 파일 처리에 대한 결정은이 작은주의 사항으로 이어질 수 있습니다.

확실히 결함 일 수 있지만 작은 것일 수 있습니다. 다른 VCS에는 다른 결정 (git에서 끊임없이 필요한 정리 작업, 예를 들어 그럴 가치가없는 git을 만들지 않는 것)에서 오는 다른 결함이 있습니다.

+0

이 질문은 그 장단점이 실제 프로젝트에 실제 사용자에 미치는 영향을 알아 내기에 관한 SO의 본질은 우리가 볼 수있는 것을 의미한다. 이 커뮤니티에 영향을 미치는 (또는 적어도 중요한 것은)이 커뮤니티를 더 (투표로) –

+0

괜찮습니다. 내 대답은 아마도 바닥에 머물러있을 것입니다. 나는 그걸로 완전히 괜찮습니다. 방금 지적했으면 좋겠다고 생각했습니다. 나는 그것이 당신의 질문에 대한 진정한 대답이 아니라는 것을 안다. 그러나 그것은 CW 다. 그래서 나는 자유 :-) – balpha

+0

참여해 주셔서 감사합니다. 답변을 위해 시간을내어 주시면 질문을 오해하지 않으려 고합니다. :) –

1

git은 빈 디렉토리를 사용하지 않습니다. 놀랍지 만, bzr을 추적합니다.

CVS 일 이후 우리와 함께 있었던 쉬운 해결 방법은 디렉토리에 자리 표시 자 파일을 만들고 그 자리를 추적하는 것입니다. 또는 빌드 프로세스에서 빈 디렉토리를 만들 수 있습니다. 이는 거의 항상 올바른 작업입니다.

+0

+1 빌드에서해라. 저는 수은으로 디렉토리를 추적하기위한 준 표준적인 방법을 찾고있었습니다. 빌드에서 그것을하는 것은 훨씬 더 우아한 해결책으로 밝혀졌습니다. –

1

저는 빈 디렉토리에 대해서도 직면 해 왔습니다.자리 표시 자 파일 사용시 문제는 더 이상 필요하지 않은 경우 (나중에 하위 디렉토리 나 파일이 추가 되었기 때문에 삭제하고 삭제해야한다는 것입니다.) 이러한 자리 표시 자 파일을 관리하는 큰 원본 트리가 번거롭고 오류가 발생할 수 있습니다 . 발생하기 쉬운

0

추가 : DO 트랙 디렉토리 :. 플라스틱 SCM, Accurev 내가 트레이드 오프가 알고

+0

커뮤니티 위키로 직접 추가 할 수 있습니다. 나는 그것이 그렇게 불쾌한 것으로 들리는 것을 의미하지는 않습니다. –