2009-08-30 8 views
10

私は小さなプロジェクトに取り組んでいる唯一の開発者なので、私は新しいVCSとして化石を試しています。私は化石のテストを始めましたが、(おそらく大きな初心者の)問題に遭遇しました。どのようにして他のディレクトリにプッシュまたはプルしますか(Hgでは簡単です)。 FossilプルまたはプッシュコマンドはディレクトリではなくURLを必要とします。あるディレクトリでサーバーを起動し、別のディレクトリからプッシュしようとすると、「サーバーループ」というエラーメッセージが表示されます。何か案は?家庭環境で化石(DVCS)を使用するにはどうすればいいですか?

+0

リポジトリファイルをコピーして「クローン」コマンドのURLの問題を回避したと忘れてしまった。 – Mosh

答えて

7

this fossil ticketによれば、クローニング、プッシュおよびプルは、化石サーバが稼働している必要があります。レポを使うだけでは、サーバーを起動してからhttp://localhost/whateverを参照する必要があります。元のリポジトリで

  1. 実行fossil server
  2. 先ディレクトリに移動し、実行fossil clone http://localhost:私はこの、クローンを試してみましたが、WITHOUT期待通りにだけ働い引くと
+0

ご返信ありがとうございます。私はそれを試して、私はまだ次の応答を得る: "2fossil:server says:server loop"。 アイデア – Mosh

+0

ハレイ!できます。 誰かが同じ問題を抱えている場合に備えて。元のディレクトリに "fossil server"を開きます。宛先ディレクトリと化石のクローン(またはプッシュまたはプル)に行く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 
関連する問題