サードパーティ製のコード(たとえば CakePHP)をプロジェクトのリポジトリに取り込んで使うような場合、バージョンアップが結構手間になります。バージョンアップの度に増減したファイルを svn add や svn delete するのは面倒ですし、ファイル名の変更をちゃんとトレースしたいなら svn rename もやりたくなるでしょう。また、CakePHP のソース自体に手を加えたいような場合、マージ作業も面倒になります。 こういう場合ベンダブランチや svn_load_dirs.pl というスクリプトを使うと、比較的楽に管理できます。svnbook でも ベンダブランチ - 第4章 ブランチとマージ - Subversion によるバージョン管理 という感じで軽く触れられているのですが、どうも利用している方が少ない気がするので、CakePHP を例にシナリオベースで利用方法を書いてみま
いろいろご意見ありがとうございます:) そういえば、この疑問の前提を書き忘れてたことに、今更ながら気づいたのでそれは明日にでも書こうと思うマス。。。 SVN のフォルダ構成でちょっと悩み中。 それは、trunk、tags、brunches をどこに置くか。 今まではルートの下に trunk、tags、brunches を置いて、その下に srouce とか documents とか tools とかってフォルダを置いていた。 でも基本 tag、brunch を切るのはソースだけだと思うので、ルートに srouce 、documents とか tools のフォルダを置いて、source の下に trunk、tags、brunches を置いたほうがやりやすいのかな?? 意見ください いままで D:\_work\svn テンプレート |--------\branches | |-------
1.まずはバックアップ(ダンプファイル作成) コマンド "svnadmin dump" を使用して、リポジトリとリダイレクト先ファイルを指定する。// ちなみにダンプファイルの拡張子はなんでもよい svnadmin dump c:\svnrepos\hoge > c:\temp\hoge.svndump 2.続いて復元(ダンプファイルの読み込み) コマンド "svnadmin load" を使用して、リポジトリに先ほど作成したダンプファイルをロードする。 ※あらかじめリポジトリをcreateしておく。 svnadmin create c:\svnrepos\hoge2 svnadmin load c:\svnrepos\hoge2 < c:\temp\hoge.svndump 関連記事 >> dumpコマンドの失敗 - No Programming, No Life 参考サイト >>Sub
ところが、この tortoise svn は、設定をちゃんとやっておかないと妙にPCが遅くなると言う現象が発生します。 先のリンクの最後に示したリソースが、この現象の解消方法についてわかりやすく書かれたページとなります。 とは言え英語のページなので日本語の情報が欲しいと言う方のために、ちょいと書いておくことにしましょう。 tortoise svn がキャッシュするディレクトリを制限する そもそもなんで tortoise svn を入れると体感的に遅くなるのでしょう? これはバックグラウンドで動作している TSVNCache.exe なるプログラムがディスクへの書き込みイベントを監視しているからなのです。 tortoise svn はエクスプローラ上に svn 管理下にあるファイルやディレクトリのアイコンを表示するため、ファイルの読み書き、ディレクトリの作成などのイベントを監視しており
SubversionとTracでファイル管理の“迷宮”から脱出:ユカイ、ツーカイ、カイハツ環境!(2)(1/4 ページ) プロジェクトで修正/仕様変更が“迷宮”入りする理由 ソフトウェア開発を行ううえで、設計書やソースコードのバージョンをきちんと管理することは非常に重要です。構成管理(ファイル管理)を行っていないプロジェクトでは、例えば次のような問題が発生します。 2人以上の開発者が同時に成果物を編集した場合、後に編集を始めた開発者がすでに編集を行った開発者の編集内容を上書きしてしまう。結果として、修正したはずのバグや変更したはずの仕様が、設計書やソースコードに反映漏れするという事態が発生 設計書やソースコードのレビューを行って修正したはいいが、どこをどう修正したのか分かりにくく、レビュー内容の反映の確認を行っても修正漏れや修正誤りに気が付かない ソースコードを変更すると、動かなくなってし
リポジトリ作成時に作られたpre-commit.tmplにいろいろ説明が書いてあるので要約すると。 Subversionのトランザクションがコミットする前に呼ばれる。 2つの引数とともに呼ばれる。 リポジトリパス トランザクション名 'pre-commit'というファイル名でhooksに置く。(Windows環境の場合は、pre-commit.batや、pre-commit.exe) コミットさせたくないときは、0以外を返して終了させる。 svnlookコマンドを使っていろいろ情報を取得する。 まず、svnlookコマンドを使って、どんな情報がとれるか見たいので。 以下のスクリプトを作成し、pre-commitというファイル名で、/home/svn/repository/hooksに置く。 #!/bin/sh REPO=$1 TXN=$2 SVNLOOK=/usr/bin/svnlook
導入 Subversion は、ソースコードのツリー・テキストファイル・画像ファイル -- およそ考えうるあらゆる形式のファイルを 管理するために使用可能です。 VersionControl_SVN の機能には以下のようなものがあります。 svn サブコマンドの完全なサポート。 PEAR_ErrorStack による柔軟なエラー報告。 複数オブジェクトによるファクトリデザイン。 完全にドキュメント化されたソースコード。 VersionControl_SVN を通じてアクセスすることにより、Subversion のような バージョン管理システムは、ありきたりな"ソースコード" リポジトリをはるかにこえた威力を発揮します。 たとえば、バージョン管理機能の恩恵をうけないコンテンツ管理システム (CMS)がどこにあるというのでしょうか? プログラマでない多くの人々に とっても、バージョン管理は頭
A Subversion Pre-Commit Hook 2006-08-09 • Subversion, Python, C++, Shell • Comments Subversion’s hook scripts provide a powerful and flexible way to associate actions with repository events. For example, the pre-commit hook allows you to check — and possibly abort — a transaction before it actually gets committed. This entry describes how to install and test a simple Python hook script to prohibit
AboutAbout TortoiseSVNScreenshotsScreenshots of various dialogsTestimonialsWhat users say about TortoiseSVNNews ArchiveNews archiveSupportFAQFrequently asked questionsHelp filesThe complete documentationUseful tipsTips about not well known featuresMailing listsWhere to find the mailing listsReport bugsHow and where to report a bugTranslationsHelp translateProject statusOverview of releasesMiscIssu
TracExplorer is a collection of utilities which integrate with Edgewall's Trac system. Visual Studio Addin which integrates Trac functionality into Visual Studio 2005 and 2008. It's main function is to facilitate management of tickets from within Visual Studio. TortoiseSvn ticket integration adds trac tickets to commit messages. Good Starting Points Licence Development Download Documentation FAQ
Proxy経由でSubversionリポジトリ(Apache2+WebDAV)にアクセスすると、何故か「400 Bad Request」のHTTPエラーが返ってきた。 しかし、Webブラウザで、リポジトリにアクセスすると普通に閲覧できる状態。 なぜだろうと思い調べてみると、Proxyサーバが、Subversion(DAV)の使うHTTPのメソッドをサポートしていないのが原因でした。 ということで、Proxyサーバの設定を修正することで対処。 以下は、Squidの場合の例。以下の一行をsquid.confに追記する。 extension_methods REPORT MERGE MKACTIVITY CHECKOUT ちなみにSubversion(DAV)が使うHTTPメソッドの一覧はコチラ。 http://subversion.tigris.org/faq.html#http-method
タイトルにあるような事を行うモジュールを作ってみました。 source http://labs.miu.vc/svn/cooldaemon/perl/SVN-Hook-PreCommit/ POD が雛形そのまんま。 使い方 モジュールをインストールした後に、下記を /path/to/hooks/pre-commit として保存する。 #!/usr/bin/env perl use strict; use warnings; use SVN::Hook::PreCommit; SVN::Hook::PreCommit->run( qw(ChangeLogToYaml CheckPerlScript TidyPerlScript)); run の引数で指定した plugin のみ実行される。 解説 気が向いたら書きます。 その他 突っ込み添削大歓迎。
ブランチやタグにコピーしたい作業コピーのフォルダーを選択してから、 TortoiseSVN → ブランチ/タグの作成... コマンドを実行してください。 新しいブランチのコピー先 URL のデフォルトは、作業コピーの基準になったコピー元 URL になっています。ブランチ/タグの URL を新しいパスに変更してください。つまり、 http://svn.collab.net/repos/ProjectName/trunk の代わりに、 http://svn.collab.net/repos/ProjectName/tags/Release_1.10 のようにするということです。前回使用した命名規則を思い出せなければ、右にあるボタンをクリックすれば、リポジトリブラウザーが開かれ、既存のリポジトリの構造を確認することができます。 中間フォルダーターゲットURLを特定するとき、末端のフォルダーまです
さて、先日までTracサーバにかかりっきりになっていたんですが、やっとひと段落したので、気分もすっきり。プラグインなどで、もっと便利に使う要素も検討したいが、あまり入れすぎると本体のバージョンが上がったときに苦労しそうなので、しばらくは素の状態でいろいろと勉強してみたい。 Tracのように、SubversionのリポジトリをWEBでブラウズするときに便利なのは他にもきっとあるはずだと思い、簡単に調べてみました。 個人的にTracのいいなぁって思う部分は、 1)Diff差分がリビジョンごとに取れる。また差分ファイルだけ簡単にダウンロードできる。 2)mod_python使うとさくさく動く 逆に、ここは改善の余地あるなぁtって思う部分は 3)付属のWikiは不便。WPや、使い慣れたWikiなどをラッピングか、RSSで取り込むようなのがあれば便利かも。 4)ガントチャートがオプション。プラグイン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く