🐢

Gitを使ったことがある人向けのSVNの使い方概要

1 min read

Gitに慣れていると業務でSVNを使うことになったとき、同じ名前の作業で混乱するので

  • 環境
    • Windows10
    • TortoiseSVN

git-svnの存在は昨日知ったが「ローカルではgitで管理し、SVNのブランチ作るとかマージするときだけsvnを使う」という運用方法に落ち着いたのでおそらく使わない

コマンドについてはこちらが参考になる

https://zenn.dev/kumamoto/scraps/b27b88d6b2adc4

大体の対応表

Gitでの作業 SVNでの作業
リポジトリからチェックアウトする 同じ(ただしブランチを切る・タグをつける度にコピペフォルダが量産されるので全部チェックアウトしようとするとものすごく時間がかかる)
ログを表示する 同じ
コミット前の変更を確認する 同じ
コミット前の変更をリバートする 同じ
リモートからプルする アップデートする
変更をステージへ追加する ない(SVNの管理下にないファイルを「追加」ならある)
コミットする(プッシュはしない) ない
プッシュする コミットする(紛らわしいが「SVNでのコミット」=「Gitでのコミット&プッシュ」)
コミットを取り消す(プッシュ前) ない(コミットしたら取り返しがつかない)
最新のdevelopからブランチを切る 「最新のリビジョンのtrunkフォルダ内の指定階層」の中身をbranchフォルダ内にコピーする
developへマージする trunkフォルダに上書きコピーする
コミットID:xxxにタグをつける 「リビジョン番号:xxx時点のtrunkフォルダ内の指定階層」の中身をtagフォルダへコピーする

コミット前の変更をリバートする

rem 1ファイルだけ
svn revert <ファイル名>

rem 全部戻す(管理対象でないファイルは削除しない。変更したファイルのみ戻す)
svn revert -R .

ローカルの除外リストに追加する

要は(コミットしない).gitignore

  1. C:\Users\%username%\AppData\Roaming\Subversion フォルダ内の config ファイルを開く
    • エクスプローラーに %APPDATA%\Subversion を打っても移動できる
    • # はコメント
  2. [miscellany]下に下記を記載
    [miscellany]
    global-ignores = *_tmp.* # <- 除外するファイル/フォルダ名をワイルドカードで指定
    
  3. リポジトリフォルダ内で svn status を実行すると、除外されている

参考:【TortoiseSVN】自分の環境でだけ無視したいフォルダ、ファイルを設定する手順 < https://oki2a24.com/2017/02/02/ignore-folders-and-files-in-only-my-subversion/ >

Discussion

ログインするとコメントできます