A successful Git branching modelの初期設定をする
バージョン管理システムをSubversionからGitに移行しました。Gitではブランチの使い方が重要になってきますが、A successful Git branching modelがいいみたいです。このモデルではリモートにmaster・developブランチを作る必要があるので、設定方法を記録しておきます。今回はxxx.xxx.xxx.xxxというIPアドレスにtanakaというアカウントを持っていると仮定し、そこにprojectという名前のリモートリポジトリを作成する場合を想定します。
リモートリポジトリを作る
$ ssh tanaka@xxx.xxx.xxx.xxx $ mkdir ~/git/project.git $ cd ~/git/project.git $ git init --bare Initialized empty Git repository in /home/tanaka/git/project.git/ $ ls HEAD branches config description hooks info objects refs $ exit
ローカルリポジトリを作る
$ mkdir ~/project $ cd ~/project $ git init Initialized empty Git repository in /home/tanaka/project/.git/ $ touch .gitignore $ git add . $ git commit -m "Initial commit" -a [master (root-commit) 5d8998b] Initial commit 0 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 .gitignore $ git push tanaka@xxx.xxx.xxx.xxx:git/project.git master Counting objects: 3, done. Writing objects: 100% (3/3), 224 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To tanaka@xxx.xxx.xxx.xxx:git/project.git * [new branch] master -> master $ cd $ rm -rf ~/project $ git clone tanaka@xxx.xxx.xxx.xxx:/home/tanaka/git/project.git ~/project Initialized empty Git repository in /home/tanaka/project/.git/ remote: Counting objects: 3, done. Receiving objects: 100% (3/3), 223 bytes, done. remote: Total 3 (delta 0), reused 0 (delta 0)
developブランチを作る
$ cd ~/project $ git checkout -b develop Switched to a new branch 'develop' $ git push origin develop Total 0 (delta 0), reused 0 (delta 0) To tanaka@xxx.xxx.xxx.xxx:/home/tanaka/git/project.git * [new branch] develop -> develop $ git checkout master Switched to branch 'master' $ git branch -d develop Deleted branch develop (was 5d8998b). $ git checkout -t origin/develop Branch develop set up to track remote branch develop from origin. Switched to a new branch 'develop' $ git branch -a * develop master remotes/origin/HEAD -> origin/master remotes/origin/develop remotes/origin/master