按羣暉的Git Server說明文檔創建失敗,找到一些資料後自己驗證如下,github.com的方式也類似,但這裏就沒提及了
On 羣暉
在用戶界面創建新用戶git,沒有特殊權限,放到users組即可
用ssh的root用戶登錄到羣暉,vi /etc/passwd 文件
修改git用戶的home目錄
/var/services/homes/git to /volume1/git
修改登錄後的 shell
/sbin/nologin to /bin/ash
切換爲git用戶:
DiskStation2# su - git
修改git用戶home目錄的權限爲700
DiskStation2# chmod 700 /volume1/git/
再在/volume1/git/創建一個.ssh文件夾, 還是權限700
將你Mac當前用戶下的.ss/id_rsa.pub中的內容copy / paste到羣暉上面~git/.ssh/authorized_keys裏面
On Mac 測試一下
ssh git@diskstation ls /etc/shells
輸出正常的話就可以成功ssh了
On 羣暉
用git用戶登錄,創建repositories文件夾
cd to it, then create a git repo:
git@DiskStation2% echo $PWD
/volume1/git/repositories
創建一個git倉庫
git@DiskStation2% mkdir test.git
git@DiskStation2% cd test.git/
git@DiskStation2% git init --bare //空倉庫需要
Initialized empty Git repository in /volume1/git/repositories/test.git/
git@DiskStation2% ls
HEAD branches config description hooks info objects refs
OK,已經在Git Server創建了test的Repositiory,先暫停回到Mac上
On Mac
現在終端裏面,進入項目目錄執行:
git remote add lan ssh://[email protected]/volume2/git/repositories/test.git
git push -u lan master
上面的代碼將本地的倉庫連接到Git Sever,並且將代碼提交到master分支上
提交後看返回是否正常,如正常就沒問題了
注意,如果是服務器已有非空repository,則會出現類似這種提示:
! [rejected] master -> master (fetch first)
則需要先pull到本地
git pull lan master
然後再git push -u lan master
push沒問題後,回到Xcode裏面
On Xcode
試試吧
新建的文件,Xcode會提示一個A標籤,表示是Added的。
編輯的文件,Xcode會提示一個M標籤,表示是Modified的。
選中要更新的文件,右鍵-->Source Control-->Commit Selected Files 通過此操作將變更提交到本地的倉庫中。
選中要更新的文件,File菜單-->Source Control-->Push 將本地變化存儲到遠程服務器中。
參考這個文章:http://ti57.blogspot.com/2013/01/how-to-setup-git-server-on-synology-nas.html