Version管理
Subversion 中央集権型
svn checkout, add, delete, commit, update, diff, log, mergeなど
sudo apt-get install subversion
svn --version
・svnserve svn:// 小規模向け
・apache http:// 大規模向け
sudo svnserve -d -r /var/subversion/repo
sudo killall svnserve
sudo mkdir /var/subversion
sudo svnadmin create /var/subversion/repo
sudo svn import ./MyApp/ file:///var/subversion/repo/myapp -m "import myapp"
svn import <file/directory> <protocol>://<server>/<path>
svn import test1 svn://localhost/myapp/trunk/test -m'import test'
svn import aaa.txt svn://localhost/myapp/trunk/test/aaa.txt -m'import aaa.txt'
svn co svn://<server>/<path>
svn co http://<server>/<path>
svn ci <directory>
svn update <directory>
svn add <file>
svn del <file> ※svn delete、svn remove、svn rm
svn mv <before> <after> ※svn rename、svn ren
svn cp <コピー元> <コピー先>
svn st -u 変更確認
Centralized Version Control Systems
ファイルの内容が変更されるかどうかに注目
On-line操作のみ
★WebSVNの導入
前提:Apache、PHP、Subversion
sudo apt-get install websvn
・サーバをapache2を指定
・/var/subversion/repoを指定
http://localhost/websvn/
Git 分散型
git init, clone, add, commit, status, diff, reset, mergeなど
sudo apt-get install git
git --version
git pull = git fetch + git merge
Settings
git config --global user.name "Your Name"
git config --global user.email "your_email@email.com"
※~/.gitconfigに保存された
cd ~/.ssh
ssh-keygen -t rsa -C "your_email@email.com"
※https://github.com/settings/sshで Add SSH key → id_rsa.pubの内容を貼る
ssh -T git@github.com
Create a new repository
cd work
git init 初回のみ
git add <file>
git commit -m 'xxx comment'
初回のみ
git remote add origin https://github.com/YourGithubID/work.git SSHを利用せず
git remote add origin git@github.com:YourGithubID/work.git SSHを利用でき
git push -u origin master
※https://github.com/YourGithubID/work
Push an existing repository
git clone https://github.com/YourGithubID/work.git work
すでに存在する場合
git pull origin
あるいは
git fetch origin
git merge origin/master
削除の手順
git status
git add .
git rm <file>
git rm <directory> -r
そのほか
git status
git log
git remote -v remote確認
git remote rm origin
★Windowsにproxy設定(.gitconfigファイル)
[http]
proxy=http://<IP>:<PORT>
[https]
proxy=http://<IP>:<PORT>
Distributed Version Control Systems
ファイルの全体が変更されるかどうかに注目
On-line/Off-line操作
★Commands sequence (Git)