coderepos や lazy-people や vaginarepos といろんな subversion リポジトリにアカウントもらって、さらにはプライベートな subversion リポジトリがあったりすると、どこになにがあったのかさっぱりです。そんなときは、をれをれ subversion リポジトリを作って自分が使うものだけを集約すると、快適な生活を送れるかと思います。やり方はカンタンです!プライベートなリポジトリ( http://example.com/repos/private/ )を用意して、svn:externals をセットするだけです! # checkout する $ svn co http://example.com/repos/private/ $ cd private # coderepos 用ディレクトリを作る $ svn mkdir coderepos $ s
想定外な事になるよ!っていう例をやってみた。 $ ls trunk/ foo.txt hoge.txt branches/a を作る $ svn copy trunk branches/a A branches/a $ svn ci Adding branches/a ファイルを色々変更する $ vim branches/a/foo.txt $ svn diff Index: branches/a/foo.txt =================================================================== --- branches/a/foo.txt (revision 2) +++ branches/a/foo.txt (working copy) @@ -1 +1,2 @@ fue +nikoniko $ svn ci Sending bran
Subversionのセットアップから、基本的な操作方法を説明します。 Subversion概要 ソースコードのバージョン管理システムは、ソフトウェアの開発の中でもっとも重要なツールです。チームで開発を行なうときにソースコード管理システムは必須のツールの一つですが、ソースコードだけでなく様々なフィアルも管理できます。単にチームとしての利用だけでなく、個人のツールとしても威力を発揮します。筆者も、個人でバージョン管理システムを導入して、原稿やサーバの設定ファイルなどのドキュメントの管理をしています。 バージョン管理システムとして、以前はCVSが多くのプロジェクトで利用されていました。しかし、CVSは履歴を保持したままでのファイルの移動ができないなどの問題もありました。SubversionはCVSが抱えていた問題を解決するために開発されました。現在では、多くのプロジェクトでSubversion
とりあえず新規レポジトリを作るまでもないけど作業履歴をとっておきたい,という場合,わたしは Sandbox というレポジトリに全部つっこんでいます。 /Sandbox /project1 /project2 /foobar 各サブプロジェクトごとに trunk 等を切ることもありますし,そうしないこともあります。こんな感じで Sandbox で作業してて熟してくると,単独プロジェクトとして分割管理したくなります。 /foobar /trunk /tags /branches できれば,いままでの作業履歴も移行したい! 「svnadmin dump」や「svndumpfilter」というキーワードでググると色々でてきますが,今回は下記のサイトを参考にしました。 Subversionの続き履歴を残したままリポジトリ間でファイルを移動 - StepupEngineeringはてな支店 cvsから
いろんなプロジェクトのソース管理やドキュメント管理に、Subversionを使っている。ときどき、ログメッセージに誤字があったり、必要なコメントを入れ忘れて、後から修正をしたくなる事がある。 例えば、Windows上のSVNクライアントのTortoiseSVNでは、ログの一覧を表示させておいて、ログを修正したリビジョンで右クリック⇒ログメッセージを編集をすると、修正する事が出来る。ただし、通常のSubversionサーバー側の標準設定ではこの機能は使えない。 そこで、下記のようにrevprop前のフックを有効にしてやる。 (レポジトリのパスが /home/svnroot だと仮定) # cd /home/svnroot/hooks # cp -a pre-revprop-change.tmpl pre-revprep-change # chmod +x pre-revprep-change
相変わらずVimのカスタマイズに熱中しています。 手を加えるほどに、できることがどんどん増えていくのが楽しいところ。(ようやく基本機能も全様が見えてきた) さて先日、このVimの設定ファイルを自宅と会社で共有したいと思い、オンラインのSVNリポジトリサービスを探してみました。 せっかくなので調べた結果を書いておきます。 無料オンラインSubversionリポジトリサービス 私が試してみたサービスは以下の3つ。 それぞれサービスの特徴が異なるで、目的にあったものを選ぶのがよいでしょう。 Unfuddle Unfuddle: Free Source Control, Bug and Issue Tracking 容量 プロジェクト数 管理ツール 日本語表示
Piston is a utility that eases vendor branch management. This is similar to svn:externals, except you have a local copy of the files, which you can modify at will. As long as the changes are mergeable, you should have no problems. Piston has a similar purpose than svnmerge.py which you can find in the contrib/client-side folder of the main Subversion. The main difference is that Piston is designed
というわけで,説明+ハンズオンを2時間ほどやった.最初に人柱になったデザイナは自分とつきあいもそこそこ長く,コンピュータのリテラシも高め.案件の規模も手頃.経験も積んでいることもあって,利点はすぐに理解してもらえたようだ.うまくいくかはわからないけど始まったのは大きい.今回の導入の前提や考えてるポイントとか列挙 前提 デザイナは全部で8人 3人はコンピュータ使用のリテラシもモチベーションも高め,アプリも使いこなす 2人は新しいツール・習慣に拒否反応を示す可能性アリ 現在のファイル管理は共有フォルダを使って,日付でバックアップ作成(><) プログラマだと「バージョン管理使わないのは幼稚園児までだよね」とかで済む(ぉ)のだけど,デザイナはそうも云ってられない 目的 度々作業中に先祖返りなどが起こり,そのたびに四苦八苦している バックアップが面倒なので解消したい プログラムチームとの共同作業も多
通常の手順 ~/.svkの初期化 svk depotmap --initはあらかじめ実行しなくても、 後でコマンドを実行したときに同じことをきかれるので省略可能です。 % svk depotmap --init Repository /home/kazu/.svk/local does not exist, create? (y/n)y depotについて //mirror/nadokaというのはDEPOTPATHというもので、 svkのdepot*1の中のパスを指すものです。 depotのレイアウトは //A/trunk/Aプロジェクトのtrunkのミラー //A/local/Aプロジェクトのtrunkのコピーのローカルブランチ //B/trunk/Bプロジェクトのtrunkのミラー //B/local/Bプロジェクトのtrunkのコピーのローカルブランチ //B/my-feature-
以前も書きましたが mod_dav_svn で SVNParentPath を設定すると,レポジトリを作成するごとにいちいち httpd.conf を書き換える必要がなくて楽なのです。唯一困っていたのが,その SVNParentPath 自体にアクセスすると Forbidden となってしまうこと。ログを見ると,「The URI does not contain the name of a repository」と怒られるので,これは mod_dav_svn 自身が出しているみたいですね。 trac の TracEnvParentDir では,親ディレクトリにアクセスすると各子プロジェクトページへのディレクトリリストが出力されて便利なんで,同じようにしたい。 で Google 先生に聞いて, Subversion Users: Browse repos available under SV
Get full visibility and control over your tasks and projects with Wrike. A cloud-based collaboration, work management, and project management software Wrike offers world-class features that empower cross-functional, distributed, or growing teams take their projects from the initial request stage all the way to tracking work progress and reporting results.
概要 本エントリーではSVKという分散バージョン管理システムを用いてSubversion のローカルとリモートのrepositoryの管理を効率的に行う方法について記述する。 目的 過去のrevisionと互換性が維持されづらい大幅な変更を一度に行う場合次のような需要が生まれる。 作業時に頻繁にcommitを行いたい。 問題がでた場合に、問題の無いrevisionまで戻したい。 目的の作業が達成された場合のみcommitを行いたい。 中途半端にコンパイルが通らないようなソースコードはcommitしたくない。 これらを同時に行うには、作業時の頻繁なcommitはlocalのrepositoryに行い、目的の作業が達成された場合のみremote のsource repositoryにcommit出来れば良い。 ここで問題となるのがlocal repository と remo
Subversion で直前のコミットを取り消し,なおかつ Trac も同期する方法 2007-01-18-1: [Subversion][Trac] 勢い余ってコミットしたはいいけど,恥ずかしい間違いがあってコミットをなかったことにしたい場合の対処方法です. 対象のリポジトリ /svn/foo 現在のリビジョン 100 直前のリビジョン 99 対象の Trac 環境 /trac/foo 1. 取り消したいリポジトリをディレクトリごとバックアップする $ mv /svn/foo /svn/foo.bak 2. 同名のリポジトリを作成する $ svnadmin create /svn/foo 3. バックアップしたリポジトリから直前までのリビジョンをダンプして,新しく作ったリポジトリにロードする $ svnadmin dump -r 0:99 /svn/fo
svkのMLで流れていたのでやってみた。 http://www.enricozini.org/2005/tips/etc-under-svk.html リポジトリはあるので、 % svk import --to-checkout //etc /etcだけ。 --to-checkout オプションは、importと同時に、そのパスをチェックアウトパスにするということです。 以後は、 % cd /etc % svk diffとか、できるようになる。 (追記って、リンク先に書いてるけど)システムが勝手に変更してしまうようなファイルで管理したくないものは、 % svk rm -K adjtimeとする。-K は、チェックアウトしたローカルファイルからは消さないというオプション。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く