參考教程:git伺服器搭建和免密碼設定
詳細教程 - Git 安裝配置
centos安裝
$ yum install curl-devel expat-devel gettext-devel \ openssl-devel zlib-devel
$ yum -y install git-core
$ git --version
git version 1.7.1
建立git使用者 | useradd git |
---|---|
設定git密碼 | passwd git (之前用簡單密碼,導致伺服器被 肉雞 ) |
建立空資料夾 | mkdir -p /data/git/gittest.git |
---|---|
初始化 裸庫 | git init –bare /data/git/gittest.git |
更改倉庫許可權 | chown -R git:git /data/git/gittest.git |
其實到這一步,git 已經能用了。比如在客戶端電腦執行 git clone git@host:/data/git/gittest.git
如果伺服器 ssh
埠號不是預設的 22
,那麼命令為 git clone ssh://git@host:port/data/git/gittest.git
但我們更希望使用 公鑰私鑰
來管理 git ,防止別人暴力破解。
客戶端要建立公鑰私鑰對 | 執行命令: ssh-keygen -t rsa, 一路回車得到 id_rsa,id_rsa.pub 私鑰公鑰對 |
---|---|
將 id_rsa.pub 追加到伺服器的 git 使用者下 authorized_keys 檔案中 | 追加命令 cat id_rsa.pub >> /home/git/.ssh/authorized_keys |
拷貝這兩個檔案給其它想要登陸的使用者放置在對應的使用者目錄 | windows 的放置位置:C:\Users\ dhn.ssh目錄 linux的放置位置 : /root/.ssh(或者在使用的其它使用者目錄) |
測試 ssh 免密登陸 | ssh git@host -pport |
- 如果登入成功,那麼git也可以使用ssh協議免密連線了。
- 注意:原生程式碼提交前先做好
.gitignore
配置
.gitignore配置:
/node_modules
/storage/*.key
/storage/app/
/storage/debugbar/
/storage/framework/
/storage/logs/
/vendor
git.sh
/public/.user.ini
.htaccess
.env
客戶端拷貝裸庫 | git clone git@host:/data/git/gittest.git 22 以外的埠在 : 後面新增 |
---|---|
提交原生程式碼 | 複製貼上專案到 git 倉庫 提交推送:git add . && git commit -m 初始化專案 && git push |
伺服器同步程式碼 | 1. git clone git@host:/data/git/gittest.git 2. cd gittest && mkdir storage/views && mkdir storage/logs && mkdir storage/framework 3. composer install cp env.example .env && vim .env |
測試伺服器同步程式碼 | 1. git clone git@host:/data/git/gittest.git 2. cd gittest && mkdir storage/views && mkdir storage/logs && mkdir storage/framework 3. composer install cp env.example .env && vim .env |
注意以上伺服器端命令需使用 www
使用者執行,否則還需要處理許可權問題composer
應當使用單獨的配置執行
如有錯誤,可以在評論中指出來
轉義反斜杆預覽的時候是\,釋出的時候是轉義成功。。。
本作品採用《CC 協議》,轉載必須註明作者和本文連結