*ブランチを分けて開発しマージするまでの手順 [#w2bb166d]

** 0. 以下のような状態で、dir以下のファイルを別のブランチに分けて、開発を分岐したい。 [#iad7fc3f]

:リポジトリ|file:///SVN_ROOT/PRJECT_NAME
:元の開発コピー|/ORIG/work
:分岐後の開発コピー|/NEW/mywork
:最初のファイル構成(/ORIG/work以下)|
 1.pl
 2.pl
 dir/
    3.pl

** 1. ブランチ用のディレクトリを作る。 [#ef7d1c88]
 cd /ORIG/work
 mkdir branch
 svn add dir
 svn commit -m ''
 -----------------
  1.pl
  2.pl
  dir/
    3.pl
  branch/
 -----------------

** 2. 分岐後の開発コピーを作る。 [#n72dfe25]
 cd /NEW
 svn co file:///SVN_ROOT/PRJECT_NAME mywork
 -----------------
 A  mywork/1.pl
 A  mywork/2.pl
 A  mywork/branch
 A  mywork/dir
 A  mywork/dir/3.pl
 -----------------

** 3. ブランチを作る。 [#r7fd5549]
 cd mywork
 svn copy dir branch/dir
 svn commit -m ''
 -----------------
 1.pl
 2.pl
 dir/
    3.pl
 branch/
       dir/
           3.pl
 -----------------

** 4. ブランチの中のファイルを修正して、コミットする。 [#ibe8bd65]
 vi branch/dir/3.pl
 vi branch/dir/4.pl
 svn add branch/dir/4.pl
 svn commit -m ''

** 5. 元のディレクトリでの開発を続ける。 [#z330f7a3]
 cd /ORIG/work
 svn update
 -----------------
 1.pl
 2.pl
 dir/
    3.pl
 branch/
       dir/
           3.pl
           4.pl
 -----------------

** 5. (元の)ファイルを修正して、コミットする。 [#le43c465]
 vi dir/3.pl
 svn commit -m ''

** 6. ブランチの中のファイルの修正を元のファイルにマージする。 [#p368ddaf]

*** 6.1 ログをみてブランチが出来たリビジョン(10とする)を確認する。 [#sfd1586b]
 svn log branch/dir

*** 6.2 マージを実行する。(最新のリビジョンは15とする) [#w0f92058]
 svn merge -r 10:15 file:///SVN_ROOT/PRJECT_NAME/branch/dir dir
 -----------------
 U  dir/3.pl
 A  dir/4.pl
 -----------------

** 7. マージして出来たファイルをコミットする。 [#x7a6afa5]
 svn commit -m ''



** マージするときは、以下のようにドライランして確認するとよい。 [#f3adfa87]
 svn merge --dry-run

** 2.や3.でのディレクトリの作り方は、開発状況にあわせて、サブディレクトリ以下だけを指定するなどする。 [#qde2c401]


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS