Gitのリモートリポジトリ操作
※本エントリは、謝りを含んでいる可能性があります。
2ユーザで、リモートリポジトリにpush~pullする操作のテスト。
branch、merge、rebaseなどは追って・・・。
■サーバ側でリモートリポジトリを作成する。
$ sudo mkdir -p /usr/local/git/test.git $ cd /usr/local/git/test.git/ $ sudo git --bare init --shared=true
■クライアント側で、ローカルリポジトリを作成する。
[user1@server ~]$ git init
ユーザ登録しておく
[user1@server ~]$ git config --global user.name "user1" [user1@server ~]$ git config --global user.email user1@mail
新規ファイルをコミット
[user1@server ~]$ $ touch test.txt [user1@server ~]$ $ git add test.txt [user1@server ~]$ $ git status [user1@server ~]$ $ git commit -m "test commit"
リモートリポジトリの追加
[user1@server ~]$ $ git remote add origin ssh://user1@reposerver:22/usr/local/git/test.git [user1@server ~]$ $ git remote -v origin ssh://user1@reposerver:22/usr/local/git/test.git (fetch) origin ssh://user1@reposerver:22/usr/local/git/test.git (push)
リポジトリサーバにpush
[user1@server ~]$ $ git push origin master
■クライアント側、別のユーザ(user2)でclone ユーザ登録しておく
[user2@server ~]$ git config --global user.name "user2" [user2@server ~]$ git config --global user.email user2@mail
チェックアウト
[user2@server ~]$ git clone ssh://user2@reposerver:22/usr/local/git/test.git
ユーザ2で追加コミット、リポジトリサーバにpush
[user2@server ~]$ $ touch test2.txt [user2@server ~]$ $ git add test2.txt [user2@server ~]$ $ git status [user2@server ~]$ $ git commit -m "test2 commit" [user2@server ~]$ $ git push origin master
■クライアント側、user1で取り込み
[user1@server ~]$ $ git pull origin master
参考: