git伺服器的簡單搭建

來源:互聯網
上載者:User

git伺服器的簡單搭建 1、公開金鑰的產生任何一個需要使用git伺服器的工程師都需要產生一個ssh的公開金鑰。可以通過ssh-keygen來產生  www.2cto.com   ~/.ssh$ ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/home/shizhen/.ssh/id_rsa):Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /home/shizhen/.ssh/id_rsa.Your public key has been saved in /home/shizhen/.ssh/id_rsa.pub.The key fingerprint is:a8:19:49:f4:e6:e8:4f:8f:3e:47:c9:19:4c:09:ee:7f shizhen@sz-desktopThe key's randomart image is: 首先會讓你輸入要儲存公開金鑰的位置,直接斷行符號即可,接著會提示讓你重複一個密碼兩次,
如果不想再使用公開金鑰的時候輸入密碼,直接斷行符號即可。完成後會在home目錄下的.ssh目錄
中產生兩個檔案id_rsa(私人密鑰)和id_rsa.pub(公開金鑰)。  www.2cto.com  將產生的公開金鑰即id_rsa.pub發給git倉庫的管理者。2、架設伺服器(1)伺服器端最好建立一個git組,讓後再添加一個git使用者,並且添加到該組當中。sudo adduser gitsu gitcd ~mkdir .ssh在git使用者建立一個.ssh的目錄,將開發人員的SSH公開金鑰添加到git這個使用者的authorized_keys
這個檔案當中。如有zhangsan,lisi兩個開發人員。  www.2cto.com  cat /tmp/id_rsa_zhangsan.pub >> ~/.ssh/authorized_keyscat /tmp/id_rsa_lisi.pub >> ~/.ssh/authorized_keys建立一個空的倉庫cd workmkdir project.gitcd project.gitgit --bare init使用--bare會初始化一個不帶任何工作目錄的倉庫,不會看到工程源碼。為了不使開發人員每次clone代碼的時候都輸入ip地址,可以採用DNS的方式。具體操作如下sudo vim /etc/hosts在裡面加入下面一行192.168.1.100 gitserver(2)開發人員端若沒有倉庫的情況下,需要首先建立一個倉庫。在需要建立倉庫的,目錄下執行以下的命令。cd my_projectgit initgit add . (將所有檔案加入倉庫管理)git commit -m "initial commit"git remote add origin git@gitserver:/home/git/work/project.git (即:git@192.168.1.100:/home/git/work/project.git)git push origin master若本地已有倉庫,但想把其中的代碼push到我們新的伺服器上,可以直接用下面的命令把想要push的分支代碼建立成master分支git checkout -b master xxxxxgit push origin master這樣一個簡單的伺服器就可以工作了,其他的開發人員可以直接從伺服器上進行代碼開發了。
www.2cto.com  為了保護git伺服器,限制開發人員登陸伺服器,可以採用如下的措施。sudo vim /etc/passwd在檔案結尾找到這樣的類git:x:1001:1001:,,,:/home/git:/bin/bash將其中的/bin/bash/改為/user/bin/git-shell現在開發人員只能通過SSH來推送和擷取代碼,不能登陸ssh服務端了。3.問題現在的 ssh 使用同樣的方法會出現錯誤訊息Agent admitted failure to sign using the key 解決方式 使用 ssh-add 指令將私密金鑰 加進來 (根據個人的密匙命名不同更改 id_rsa)即各自的開發人員執行命令ssh-add id_rsa 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.