Git學(xué)習(xí)(一)


Git&GitHub

Git是一款免費(fèi)、開源的分布式版本控制系統(tǒng)。

Github是用Git做版本控制的代碼托管平臺(tái)。也就表示這樣的代碼托管平臺(tái)可以有很多個(gè),git和github不是一一對(duì)應(yīng)關(guān)系。比如,聽說過的還有“碼云”,等等。

Git是分布式版本控制系統(tǒng),就是將同一個(gè)Git倉(cāng)庫(kù),分布到不同的電腦上。這樣工作時(shí)就必須找一臺(tái)電腦充當(dāng)服務(wù)器倉(cāng)庫(kù)的角色,每天24小時(shí)開機(jī),其他每個(gè)人都從這個(gè)服務(wù)器倉(cāng)庫(kù)中拉取別人的提交,并且各自把各自的提交推送到這個(gè)服務(wù)器倉(cāng)庫(kù)里。但這是很不方便的,如果有個(gè)遠(yuǎn)程的免費(fèi)的倉(cāng)庫(kù)可以使用才是最好的。

GitHub就是提供Git倉(cāng)庫(kù)托管服務(wù)的,只要注冊(cè)一個(gè)GitHub賬號(hào),就可以免費(fèi)獲得Git遠(yuǎn)程倉(cāng)庫(kù)。也就是有了這個(gè)遠(yuǎn)程倉(cāng)庫(kù)之后,一起合作的小伙伴拉取或是提交都是面對(duì)這個(gè)遠(yuǎn)程倉(cāng)庫(kù)就可以了。


什么是Git

Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng)(沒有之一)。

什么契機(jī)下,產(chǎn)生的版本控制系統(tǒng):

  • 如果幾個(gè)同事一起合作編輯一個(gè)文件,如果全靠人工的話,就需要保留每個(gè)時(shí)期,每個(gè)人的版本,以便之后查看,修改。還得整理出包含每個(gè)改動(dòng)的最終版,這個(gè)最終版只要有人改動(dòng),就得找到那個(gè)改動(dòng)的地方,然后更新??傊?,整個(gè)過程是非常耗費(fèi)時(shí)間和人力的。
    由此需要,產(chǎn)生了版本管理系統(tǒng),它可以自動(dòng)幫我們記錄每次文件的改動(dòng),還可以讓同事協(xié)作編輯,也不用自己管理一堆類似的文件,也不需要把文件傳來傳去。
  • 知道了版本控制系統(tǒng),那什么是分布式呢?
    與分布式對(duì)應(yīng)的是集中式。
    集中式就是將整個(gè)文件統(tǒng)一放在特定服務(wù)器上,工作的時(shí)候先要從這個(gè)服務(wù)器上獲取到最新版本,然后再進(jìn)行自己的編輯修改,完了再提交到此服務(wù)器上。所以如果沒有網(wǎng)絡(luò),就沒法工作了。
  • 分布式是每個(gè)人電腦上都有完整版本,沒有網(wǎng)絡(luò)也可以工作,可以同事之間交換修改部分,也可以統(tǒng)一設(shè)立中央服務(wù)器,然后得到每個(gè)人修改的記錄。
    先簡(jiǎn)單這樣有個(gè)概念,之后再自己實(shí)驗(yàn)。

如何安裝Git

服務(wù)器端

1.先從yum安裝git

yum -y install git

2.在需要的位置創(chuàng)建一個(gè)裸倉(cāng)庫(kù)(最后以.git結(jié)尾)

cd /usr/local
mkdir git
cd git
git init 

3.創(chuàng)建一個(gè)git用戶并賦予密碼

useradd git
passwd git

4.賦予git用戶權(quán)限

chown -R git:git  learngit.git

5.禁用git用戶shell登錄(一定要禁用)

vi /etc/passwd

將git用戶修改為如下(一般在最后一行)

git:x:1000:1000::/home/git:/usr/bin/git-shell

其他的不用改。服務(wù)端完成。


客戶端

我使用的客戶端為git for windows

  • 1.安裝,雙擊下一步,直到完成。

  • 2.進(jìn)入想要將項(xiàng)目放置的目錄

  • 3.創(chuàng)建用戶

git config --global user.name "你的名字"
git config --global user.email "你的郵箱"
  • 4.創(chuàng)建秘鑰(用來防止每次commit或push都需要密碼)
ssh-keygen -t rsa -C "你的郵箱"
  一直回車....
  • 5.將秘鑰加入服務(wù)器列表

  • 5.1 取得公鑰(本地)

在當(dāng)前目錄下(若未改變目錄,到C:\Users\Administrator.ssh\id_rsa.pub)找到.ssh目錄下的id_rsa.pub文件,打開,復(fù)制其中內(nèi)容.

  • 5.2 將公鑰加入服務(wù)器列表(服務(wù)器)
    CentOS 7默認(rèn)列表在/root/.ssh/authorized_keys,使用vi 編輯此文件輸入剛才復(fù)制的內(nèi)容,保存退出。
vi /root/.ssh/authorized_keys
    //i修改
    //esc后輸入:wq保存退出
  • 5.3 可以跳過此步,若克隆遠(yuǎn)程項(xiàng)目多次仍然需要密碼,則檢查上一步是否有錯(cuò)誤,沒有錯(cuò)誤后,再配置這一步(服務(wù)器)

在/home目錄下創(chuàng)建.ssh目錄,進(jìn)入,創(chuàng)建authorized_keys文件

cd /home
mkdir .ssh
cd .ssh
vi authorized_keys
加入我們的公鑰后保存退出。
    1. 克隆項(xiàng)目
git clone git@101.101.101.101:/usr/local/git/learngit.git

到此,就成功的從服務(wù)器上克隆下我們所需要的項(xiàng)目。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,860評(píng)論 9 163
  • Git常用語法 [TOC] Git簡(jiǎn)介 描述 ? Git(讀音為/g?t/。)是一個(gè)開源的分布式版本控制系統(tǒng),...
    君惜丶閱讀 3,953評(píng)論 0 13
  • 提筆為誰作 , 思君繾綣冷難著。 濃情消離索, 青春作伴今非昨。 且拭相思淚, 云中何人唱九歌: 若有人兮...
    風(fēng)楚閱讀 572評(píng)論 2 5
  • 全世界有上千種程序開發(fā)語言,其實(shí)自己要發(fā)明一種語言也不是很難的事情。但問題是,為什么需要新語言,尤其是通用軟件開發(fā)...
    點(diǎn)融黑幫閱讀 1,641評(píng)論 1 19
  • 前幾天考研成績(jī)下來了,本以為成績(jī)無望,可以放心的去工作了,可是上天又開了一個(gè)玩笑,考了286分。15年分?jǐn)?shù)線28...
    鋒利劍閱讀 213評(píng)論 1 0

友情鏈接更多精彩內(nèi)容