Centos7搭建Git及安裝使用

Centos7搭建Git及安裝使用

  • sa 發佈於 2018-03-09
  •  
  • 分類:未分類
  •  
  • 閱讀(9139)
  •  
  • 評論(0)
  •  
  •  

文章目錄php

[隱藏]html

1、Centos7.2 下 Git的安裝

一、查看是否安裝了git

rpm -qa|grep git

若已經安裝,須要先卸載。卸載命令以下:node

rpm -e --nodeps git  或者  rpm -e git

二、安裝Git

yum install git

輸入y,並回車git

再使用 rpm -qa|grep git 來查看是否已經安裝好了Git。shell

三、建立Git倉庫

mkdir six_git        // 建立文件夾
useradd six             //建立用戶名並設置密碼
passwd six            //(系統會提示輸入密碼和再次密碼)
groupadd git        // 建立組
git init --bare        //進入所建立的文件夾,初始化一個倉庫
chown -R six:git /var/www/six_git/        // 賦權限

2、windows7 下鏈接Git版本庫

一、安裝Git 和 TortoiseGit(小烏龜)

二、在本地建立文件夾

>在windows7中某個盤符下建立一個名爲「six」 的文件夾,這個文件夾就是咱們與遠程倉庫通信的文件夾。

三、進入「six」文件夾,右擊菜單設置本機用戶名和email

爲了直觀分辨不一樣用戶爲版本開發的貢獻,須要設定用戶名和email
下面分別是中文版和英文版的 TortoiseGitvim

四、Clone版本庫(克隆)

在要克隆版本庫的文件夾中點擊右鍵,點擊「Git克隆」菜單,根據圖中信息填寫後,點擊肯定,輸入當時建立「six」帳戶是設置的密碼便可。windows

輸入建立「six」用戶時,設置的密碼。
英文版本:centos

填寫好後,點擊「ok」按鈕,並要求輸入密碼。安全

五、添加文件

在clone庫的文件夾中添加一個測試文件,並在空白處點擊郵右鍵,選擇「TortoiseGit」-à 「添加」bash

勾選未受版本控制的文件,也就是剛剛建立的測試文件,點擊肯定按鈕。

添加完成後,彈出「加入完成」對話框,點擊肯定便可

再在該文件夾空白出點擊右鍵,點擊「Git提交(C)->」master」…」

在對話框中填寫相關的說明信息並選擇文件,點擊提交便可。

六、更新版本庫

更新版本庫前應該改先從服務器上「拉取」一下,再把本身修改的內容「推送」到服務器上.

3、創建發佈版本庫

一、在centos中創建發佈版本庫,而後進入文件夾。

二、更新版本庫,進入版本目錄,執行「git pull」命令

三、 禁止shell登錄

出於安全考慮,git用戶不容許登陸shell,這能夠經過編輯/etc/passwd文件完成。
找到相似下面的一行:

six:x:502:502::/home/six:/bin/bash
改成
six:x:502:502::/home/six:/usr/local/git/bin/git-shell
或者
six:x:502:502::/home/six:/usr/bin/git-shell
six:x:502:502::/home/six:/bin/false

git用戶能夠正常經過ssh使用git,但沒法登陸shell,由於咱們爲git用戶指定的git-shell每次一登陸就自動退出。

4、錯誤

在 windows文件夾 下 bash命令中輸入:

git fetch --all
git reset --hard origin/master

Git的bash操做:

進入git bash,我這個windows下個git已經安裝配置完成了,因此直接clone,192.168.153.129爲我centos7的ip
git clone git@192.168.153.129:/srv/git/project.git
輸入git的密碼
進入project.git
cd project.git
建立一個測試文件
vim test.txt
隨便寫一些內容
查看狀態
git status      看到有一個待添加的文件texs.txt了
添加test.txt讓git追蹤
git add test.txt
提交到版本庫,並寫上備註信息
git commit test.txt -m ‘just a test’
把他推送到服務器的版本庫中去
git push origin master

git client

git commit

已經推送到服務器端區了。。。接下來去服務器端看看有木有

剛纔俺們在服務器端建立版本庫時用的是 git init –bare project.git 加了個–bare就是建立一個裸倉庫,沒有工做區噠,因此這裏只記錄了文件的改動,要看是否是同步過來了,須要在git clone一次,看是否是這一次有test.txt啦

git clone git@127.0.0.1:/srv/git/project.git,輸入密碼後,開始下載代碼了,果真master分支已經有test.txt啦.
git log查看一下提交記錄,在mon feb 2 09:47:46 2015 +0800的這個,郵件爲xxx的做者xxx提交噠。由於windows客戶端配置的git是偶滴工做郵件和姓名,就打碼了,ok,私有git搭建完成。

git的刪除操做

rm test.txt
git status
$ git rm test.txt
rm 'test.txt'
git add -u
$ git commit -m "remove test.txt"
git push

如今,文件就從版本庫中被刪除了。

另外一種狀況是刪錯了,由於版本庫裏還有呢,因此能夠很輕鬆地把誤刪的文件恢復到最新版本:

$ git checkout -- test.txt

git checkout實際上是用版本庫裏的版本替換工做區的版本,不管工做區是修改仍是刪除,均可以「一鍵還原」。

小結

命令git rm用於刪除一個文件。若是一個文件已經被提交到版本庫,那麼你永遠不用擔憂誤刪,可是要當心,你只能恢復文件到最新版本,你會丟失最近一次提交後你修改的內容。

原文出處:phpsix -> https://www.phpsix.com/word/gGW9Vxm0.html

相關文章
相關標籤/搜索