2009-08-30 6 views
10

저는 작은 프로젝트에서 일하는 한 명의 개발자이기 때문에 화석을 새로운 VCS로 사용하려고합니다. 나는 화석을 테스트하기 시작했으나 (아마 중요한 뉴비) 문제에 직면했다. 어떻게 다른 디렉토리로 밀어 넣거나 끌어 올 수 있습니까? (Hg에서는 쉽습니다). Fossil pull 또는 push 명령은 디렉토리가 아닌 URL을 필요로합니다. 한 디렉터리에서 서버를 시작하고 다른 디렉터리에서 밀어 넣으려고하면 "서버 루프"오류 메시지가 나타납니다. 어떤 아이디어?가정 환경에서 화석 (DVCS)을 어떻게 사용할 수 있습니까?

+0

리포지토리 파일을 복사하여 "복제본"명령의 URL 문제를 피하는 것을 잊어 버렸습니다. – Mosh

답변

7

this fossil ticket에 따르면, 복제, 밀고 당기기는 화석 서버가 ​​작동해야합니다. 레포를 사용할 수 없으면 서버를 시작한 다음 http://localhost/whatever을 참조해야하며 황금이어야합니다. 원래 저장소에

  1. 실행 fossil server
  2. 대상 디렉토리로 이동하여 실행 fossil clone http://localhost :이, 복제를 시도없이 예상대로 단지 일에 정차
+0

답장을 보내 주셔서 감사합니다. 나는 그것을 시도하고 나는 여전히 다음과 같은 회신 : "2 화석 : 서버 말한다 : 서버 루프". 아이디어가 있으십니까? – Mosh

+0

만세! 그것은 작동합니다. 다른 사람이 같은 문제에 걸린 경우를 대비해서. 원래 디렉토리에서 "화석 서버"를 엽니 다. 대상 디렉토리와 화석 복제본 (또는 push 또는 pull)으로 이동 http : // localhost : 8080 <저장소 이름> 이제는 분명히 감사합니다. 다시 한 번 감사드립니다. – Mosh

+0

이전 메모에서 Stackoverflow는 http 주소를 그대로 사용했습니다. 수정 권한이있는 사람이이 문제를 해결할 수 있습니까? – Mosh

19

8080 <repository name> (또는 밀거나 당기) 화석 서버를 운영 중이다.

>cd ../master 

>echo "hello #2" > b.b 

>fossil add b.b 
ADDED b.b 

>fossil ci -m "add b.b" 
New_Version: 863e2501037e9f215ff3ec08a1d7802315151e7b 

풀 수정 된 마스터에서 수정 마스터 마스터 저장소

>mkdir master 

>cd master 

>fossil new master_repos.fsl 
project-id: dbcb1863865d7d3ed74f873df6daf07c5853df5e 
server-id: ea7a2e2496cc9c958cb7cc50bf48c0810b25a0a0 
admin-user: james (initial password is "89ef88") 

>fossil open master_repos.fsl 


>echo "hello world" > a.a 

>fossil add a.a 
ADDED a.a 

>fossil ci -m "add a.a" 
New_Version: 80b67a84ff276e559328f373008ff3014a869170 

복제 마스터 저장소

>cd .. 

>mkdir trial 

>cd trial 

>fossil clone ../master/master_repos.fsl trail_repos.fsl 
Repository cloned into trail_repos.fsl 
Rebuilding repository meta-data... 
3 (100%)... 
project-id: dbcb1863865d7d3ed74f873df6daf07c5853df5e 
server-id: 24da0b614d1a1d6cd8ac5a86200390b47b87ee27 
admin-user: james (password is "89ef88") 

>fossil open trail_repos.fsl 
a.a 
project-name: <unnamed> 
repository: C:/Documents and Settings/james/My Documents/code/test/trial/trail 
_repos.fsl 
local-root: C:/Documents and Settings/james/My Documents/code/test/trial/ 
project-code: dbcb1863865d7d3ed74f873df6daf07c5853df5e 
server-code: 24da0b614d1a1d6cd8ac5a86200390b47b87ee27 
checkout:  80b67a84ff276e559328f373008ff3014a869170 2009-11-12 15:19:51 UTC 
parent:  b04cc7533753a8a8a1f8a92b1be8b73cbc368660 2009-11-12 15:18:11 UTC 
tags:   trunk 


>type a.a 
"hello world" 

만들기

>cd ../trial 

>fossil pull ../master/master_repos.fsl 
       Bytes  Cards Artifacts  Deltas 
Send:    130   1   0   0 
Received:   230   6   0   0 
Send:    224   2   0   0 
Received:   590   8   2   0 
Total network traffic: 649 bytes sent, 806 bytes received 

>fossil update 
Autosync: file://C:/Documents and Settings/james/My Documents/code/test/master/ 
master_repos.fsl 
       Bytes  Cards Artifacts  Deltas 
Send:    130   1   0   0 
Received:   230   6   0   0 
Total network traffic: 295 bytes sent, 337 bytes received 
ADD b.b 


>type b.b 
"hello #2" 
+0

이 방법을 시도해 보겠습니다. 감사. 두 달 전에 어디 있었 니? ;) – Mosh

+1

+1 시간을 들여서 자세한 예제를 작성하십시오! :) –

-1

내용이 동일하면 동일한 화석 파일을 사용합니다 (당기기/밀기가 필요 없음). 예. 어떤 경우

fossil new ~/fs/prj1.fossil 
(mkdir prj1 ; fossil open ~/fs/prj1.fossil) 
(mkdir prj1_feature1 ; fossil open ~/fs/prj1.fossil) 

은 (prj1이 prj2이 prj1의 부분 집합 가득하다), 나는 안전한 방법 '화석 UI'를 사용합니다. 예.

fossil new ~/fs/prj1.fossil 
(mkdir prj1 ; fossil open ~/fs/prj1.fossil; fossil ui &) 
mkdir prj1_subset 
fossil clone http://localhost:8080 prj1_subset.fossil 
fossil open prj1_subset.fossil 
관련 문제