SVNクイックチュートリアル

5806 ワード

どのように迅速にSubversionサーバーを創立して、しかもプロジェクトの中で使用して、これはみんなの最も関心のある問題で、CVSに比べて、Subversionはもっと多くの選択があって、もっと簡単で、いくつかのコマンドは1セットのサーバー環境を創立することができて、使うことができて、ここにアニメーションのチュートリアルがあります.このチュートリアルでは、Subversionの最も高速なチュートリアルを使用して、最短時間で使用可能なサーバ環境を構築し、調整を加えるだけで実際のプロジェクトに適用できます.このチュートリアルは、簡単に説明するためにwindowsの下で使用する方法で、リソースの限られたプロジェクトの使用を便利にします.UNIX環境では,インストール方式が異なるだけで,コマンド実行に大きな違いはない.
  • ソフトウェアダウンロード
  • サーバとクライアントのインストール
  • バージョンライブラリの作成
  • ユーザーおよび権限の構成
  • スタンドアロンサーバ
  • を実行
  • 初期化インポート
  • 基本クライアント操作
  • 1,ソフトウェアのダウンロード
    Subversionサーバプログラムをダウンロードします.
    公式サイトのバイナリインストールファイルをダウンロードして、バイナリパッケージのダウンロード部分に来て、Windows NT、2000、XP and 2003部分を見つけて、それからApache 2.0あるいはApache 2.2を選んで、このように私達は多くのダウンロードの内容を見ることができて、現在Setup-Subversion-1.5.3をダウンロードすることができます.msi .
    SubversionのWindowsクライアントTortoiseSVNをダウンロードします.
    TortoiseSVNはWindows Shellを拡張するツールで、Windowsエクスプローラのプラグインと見なすことができ、インストール後、WindowsはSubversionの作業ディレクトリを認識することができます.公式サイトはTortoiseSVNで、ダウンロード方式は前のsvnサーバーと似ていて、Downloadページの私達はダウンロードするバージョンを選ぶことができて、現在の最高の安定したバージョンのインストールファイルはTortoiseSVN-1.5.14361-win 32-svn-1.5.4です.msi.
    2、サーバとクライアントのインストール
    サーバをインストールし、Setup-Subversion-1.5.3を直接実行します.msiは、プロンプトに従ってインストールすればいいので、サーバが実行できる環境があります.
    TortoiseSVNを取り付ける、同じく直接TortoiseSVN-1.5.14361-win 32-svn-1.5.4を運転する.msiはヒントに従ってインストールすればいいのですが、最後に完了すると再起動するかどうかをヒントにしますが、実は再起動はsvnの作業コピーをwindowsにコピーする特殊なスタイルを有効にするだけで、すべての実際の機能とは関係なく、ここではすぐに良い効果を見るために、やはり機械を再起動します. 
    3,バージョンライブラリの作成(Repository)
    Subversionサーバを実行するには、まず、サーバにデータが格納されているデータベースとみなすバージョンライブラリ(Repository)を構築する必要があります.Subversionサーバがインストールされた後、次のように直接実行できます.
    svnadmin create E:\svndemo\repository

    ディレクトリE:svndemorepositoryの下にバージョンライブラリが作成されます.
    また、TortoiseSVNを使用して、ディレクトリE:svndemorepositoryの下で「右クリック->TortoiseSVN->Create Repository here...」をグラフィック化し、バージョンライブラリモードを選択することもできます.ここではデフォルトを使用して、一連のディレクトリとファイルを作成します.
    4、ユーザーと権限の構成
    E:svndemorepositoryconfディレクトリに来て、svnserveを変更します.conf:#[general]#password-db=passwdから:[general]password-db=passwdに変更
    次に、同じディレクトリのpasswdファイルを変更し、次の3行のコメントを削除します:#[users]#harry=harryssecret#sally=sallyssecret最終的には:[users]harry=harryssecret sally=sallyssecret
    passwdファイルでは、"="の前の文字がユーザー名で、後ろの文字がパスワードです.「[users]」の前のコメント「#」は必ず削除してください.
    5独立したサーバの実行
    任意のディレクトリで実行:svnserve-d-r E:svndemorepositoryサーバプログラムが起動しました.注意コマンドラインウィンドウを閉じないでください.ウィンドウを閉じるとsvnserveも停止します.
    6、インポートの初期化
    私たちがインポートしたいプロジェクトのルートディレクトリに来て、この例ではE:svndemoinitprojectで、ディレクトリの下にreadmeがあります.txtファイル:
    右クリック->TortoiseSVN->Import...URL of repositoryに「svn://localhost/trunkImport Messageにログ情報を入力
    完了後、ディレクトリに変更はありません.エラーがなければ、データは先ほど定義したバージョンライブラリにすべてインポートされます.
    このステップは、TortoiseSVNがインストールされている別のホスト上で完全に実行できることに注意してください.例えばsvnserveを実行するホストのIPが133.96.121.22であれば、URL部分に入力される内容は「svn://133.96.121.22/trunk”.
    7、基本クライアント操作
    バージョン・ライブラリを1つの作業コピーに取り出します.
    任意の空のディレクトリの下に来て、この例ではE:svndemowc 1で、右クリック->Checkoutを実行し、URL of repositoryに入力しますsvn://localhost/trunkああ、これで私たちは仕事のコピーを手に入れました. 
    ワークコピーで変更してコミットするには、次の手順に従います.
    開くtxt、変更して右クリック->Commit...、これにより、バージョンライブラリに変更をコミットし、実行できます.
    修正内容を確認します.
    readme.txt上で右クリック->TortoiseSVN->Show Logを押すと、このファイルのすべてのコミットが表示されます.バージョン1で右クリック->Compare with working copyで、作業コピーのファイルとバージョン1の違いを比較できます.
    最後に、すべての内容がアニメーションファイルとして録画されているので、参考にしてください.
    このチュートリアルについて何か意見があれば、ここで議論してもいいです.
  • ファイルを更新した後、2人以上が同時にあるファイルのある場所を修正した場合、衝突しているかどうかは、(一般的にはそうではありません.アップロードされたバージョンはコンパイルできるので、一人一人が自分のモジュールを担当し、複数の人が独立して同じファイルを修正することはありません.他の人も先に更新し、アップロードして修正します.,)
  • 開発者の習慣的な動作.朝出勤する最初のことはsvnバージョンライブラリを更新し、もう一日の仕事を始めることです.
  • 夜に退勤したり、他の時にアップロードするものは直接アップロードすることができます.あなたが担当しているものは誰も修正していないからです.
  • 衝突はどのように発生したのですか:異なる人のため、同時に同じファイルの同じ場所を修正して、この時、彼は提出して、あなたは提出していないで、あなたは提出することができなくて、この時、あなたは先に更新して、更新してコードの衝突の問題が発生します.多くの人が同時に1つのファイルを修正しないほうがいいです.共通のファイルを変更する前に、みんなとコミュニケーションしたり、衝突を解決したりします.
  • は先に更新して、衝突がなくて、更に提出します.衝突があったら、衝突を解決してから提出します.さもないと提出できません.
  • 競合状態にあるファイルについては、TortoiseSVN->Resolvedを右クリックして競合を解決します.競合の解決:http://www.blogjava.net/jasmine214--love/archive/2011/04/07/347769.html
  • 更新-競合解決-以下の3つのファイルを削除-コミット(自分が修正していないファイルに競合がある場合は削除して更新すればよい、自分で修正したファイルは競合を解決する)
  • test.php.mineは衝突前の自分のファイルです
    test.php.バージョン番号は、競合する前のローカルのバージョンファイルです.
    test.php.サーバのバージョン番号は競合後のサーババージョンファイルです
    svnコード競合、コミットできない解決方法
    张映发表于2010-10-25
    分類ディレクトリ:サーバ関連
    svnに触れたばかりの人にとって、svnが衝突した後、提出できないのは憂鬱なことです.最も憂鬱なことは、コード間のカバーです.あなたは私のコードを覆って、私はとても怒っています.誰が誰のふたをしても気分が悪い.
    なぜコード競合の問題が発生するのか、異なる人が同じファイルの同じ場所を同時に修正したため、この時、彼は提出して、あなたは提出していないで、あなたは提出することができなくて、この時、あなたは先に更新して、更新してコード競合の問題が発生します.一般的には、できるだけ多くの人が同じファイルを修正することを避けなければなりません.もしあなたが変更したファイルが共通のファイルであれば、この時、みんなと通じたほうがいいです.みんなが変更しているのはよくありません.
    次に、共通の衝突を解決する方法を説明します.まだコードを上書きしません.test.phpを例にとります.
    1、ファイルを修正しても提出できないのは、バージョンが一致しないことが多いからです.更新して、衝突が発生しない場合は、提出できます.
    2、ファイルを更新し、衝突が発生した場合、衝突ファイルtestを開く.phpでは以下のような内容が見られます
    <<<<<<<<<<<<<<< asdfadfadfadf 11111111111111 ======= asdfadfadfadf 111111111111111 222222222222 >>>>>>>>>>>>>>>>
    他人が修正した内容と自分で修正した内容を結びつけて、ファイルの中の<<<,=====,>>>>>のような衝突記号を取り除きます.削除後、まだ提出できませんが、なぜですか?衝突すると3つのファイルが発生するので、この3つのファイルが存在するとコミットできないに違いありません.
    クライアント用のtortoisesvn(この推定プログラマー用が最も多い)は、衝突時に多く発生し、3つのファイル
    test.php.mineは衝突前の自分のファイルです
    test.php.バージョン番号は、競合する前のローカルのバージョンファイルです.
    test.php.サーバのバージョン番号は競合後のサーババージョンファイルです
    提出するときは、この3つのファイルを削除すれば提出できます.
    3、オーバーライドの原因が発生します.
    a)、衝突ファイルtestを修正する.phpの時、他の人のコードをすべて削除して、自分のコードだけを残しました.これでカバーが発生します.
    b)、test.php.mineの内容はtestに直接コピーします.phpファイルは、コードオーバーライドも発生します.
    上記の2つの状況は、初心者がこのように操作しているのを自分の目で見たので、この2つの操作方法を避けなければなりません.
    原文:http://blog.51yip.com/server/1071.html
  • 競合を回避するために、ファイルを変更する前に、まず更新の操作を行います.