그래서 지금은 Ruby on Rails를 배우고 있으며 "Agile Web Development with Rails"라는 책을 통해 작업하고 있습니다. 분산 된 SCM을 읽었 기 때문에 Mercurial을 사용하기로 결정했습니다. 이상적인 상황 인 것 같습니다. 그러나 나는 여전히 내 하드 드라이브가 잠수를 결정할 때 내 Linux VPS에 원격으로 코드를 푸시하는 것을 선호합니다.Mercurial SCM으로 분기
제 질문은 Mercurial에서의 분기에만 해당됩니다. 지금은 원격 저장소를 설정했고 SSH를 통해 변경 사항을 쉽게 푸시 할 수 있습니다 (지옥에서도 Push 할 수있는 Nginx FastCGI 사이트를 설정하기도합니다). 그러나 제가하고 싶은 것은 제가 각 장의 지부를 만드는 것입니다. 그래서 나는 책을 통해 나의 진보의 좋은 조직 된 역사를 유지할 수 있습니다.
이pushing to ssh://myserver/hg/depot searching for changes abort: push creates new remote branch 'chapter-10'! (did you forget to merge? use push -f to force)
그래서이 시점에서 내가 다시 hg merge
을하려고하고 : 나는 푸시 문을 실행하면
$ hg branch chapter-10 (do chapter 10 stuff) $ hg commit -m "Chapter 10 complete" $ hg update default $ hg merge chapter-10 $ hg commit -m "Merging chapter 10 into default" $ hg push
, 나는 의욕이 메시지를 얻을 : 그래서 내가 뭘하는지입니다 병합 할 것이 없다고 알려줍니다. 병합했기 때문에 분명히 사실입니다. -f를 사용하여 강제로 밀어 넣을 때 모든 것이 잘된 것처럼 보이며 웹 인터페이스조차도 적절한 분기를 보여줍니다.
요약하면, 내 질문은 간단합니다. 올바른 방법입니까? Mercurial (즉, "Mercurial way")에서이를 수행하는보다 적절한 방법이 있습니까? 솔직히 저장소를 백업으로 사용하기를 원합니다. 나는 분산 된 SCM 모델의 팬이지만 나에게 그것은 밀어 넣기를 강요하는 일종의 "더러운"느낌이다. 어떤 통찰력이라도 대단히 감사합니다! 미리 감사드립니다.
당신의 의도는 무엇입니까? a) 챕터를 통해 작업하면서 일련의 체크 포인트를 가지고 있거나 b) 다른 챕터에서 여러 챕터를 동시에 편집 할 수 있도록하려면? – Tarydon
옵션 A가 여기에 있지만, 팀 시나리오에서 옵션 B에서도 가치를 볼 수 있습니다. –