Your SlideShare is downloading. ×
Git 20100724
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Git 20100724

1,266
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,266
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Git で管理された あるディレクトリの話 天野卓 @ ToI 企画
  • 2. 自己紹介 佐久市で Web アプリケーションを開発しています。 LAMP Movable Type のプラグインをフリーソフトウェアと して配布しています。 http://tec.toi-planning.net GitHub でも活動しています。 http://github.com/usualoma
  • 3. この発表に関する資料 以下の URL からダウンロードできます。 http://www.slideshare.net/tag/nseg
  • 4. あるところに、 バージョン管理の対象にしたい ディレクトリがありました。 home `-- project
  • 5. しかしそのディレクトリにあるファイルは VCS を使うことのできない デザイナーも編集を行なうのでした。 home `-- project `-- css `-- style.css
  • 6. そんな状況で Git が役に立ったという話をします。
  • 7. 構成
  • 8. @ デザイナー環境 定期的かつ強制的に更新を取り込む。 % cat force_commit_files #!/bin/sh git=`/usr/bin/which git` export GIT_DIR=/home/project/.git $git add `/usr/bin/dirname $GIT_DIR` $git commit -m "`/bin/date`"
  • 9. 問題点 問題 1 VCS を使わないユーザーに管理用のファイルを変更され れてしまう! (/home/project/css/.svn とか ) 問題 2 無駄なコミットが大量に追加されてしまう ! ( 変更途中の状態で後々まで残す必要のないもの )
  • 10. 問題 1 の解決 /home/project/.git を $GIT_DIR にする。 Git を使わないユーザーには /home/project/css だけを公開する。 (FTP でルートディレクトリを制限 ) /home/project <- $GIT_DIR /home/project/css <- FTP のルートディレクトリ
  • 11. なぜ問題 1 が解決できたか? Git の情報は /home/project/.git の下に保存さ れるので、 /home/project/css がルートディレク トリになっていれば触ることができない。
  • 12. 問題 2 の解決 定期的な強制コミットはローカルブランチに対して 行う。 必要な場合にメインブランチに取り込み、リモートリ ポジトリに反映させる。
  • 13. なぜ問題 2 が解決できたか? リモートリポジトリへ反映させなくてもローカル環境 だけで完結した形で、またローカル環境独自のルー ルで、バージョン管理を行うことができる。
  • 14. Git 素敵です。
  • 15. ご静聴ありがとうございました