Ubuntu16.04上使用git

各系統git的使用除了安裝方式不一樣,基本都同樣,本文記錄的是Ubuntu16.04上使用gitgit

首先要區分git和github的區別:github

Git是分佈式版本控制系統,也指基於命令行的版本管理工具
github是個網站,用於遠程託管你的項目,至關於雲盤web

在使用git前先去github註冊一個本身的帳戶,郵箱,用戶名,密碼在之後都會使用到,不要亂填,也不要忘記。
面對純英文的網站,可能你會感受很懵,暫且不用管,咱們經常使用的功能並很少,等你熟悉之後就會以爲so easy
很詳細,囊括了幾乎全部git的知識。面對這些命令,可能你會感受有點恐懼,告訴本身,全部的恐懼都是由於本身不熟悉,等你熟悉以後一切都是很簡單的。在這裏,不用刻意去記住每一個命令,理解git一些名詞的概念和工做原理,經常使用命令的含義就能夠了。最好的學習辦法是跟着教程本身作一遍。
在弄懂了git中重要概念時,爲了方便使用,可使用圖形化工具了,Windows可使用source Tree,固然不少開發工具都集成了git,這裏暫不作過多介紹。
本文重點是講Ubuntu下如何初始化git倉庫並關聯到github上
1.git安裝
在Ubuntu下隨便打開終端輸入:
sudo apt-get install git
命令便可完成安裝
安裝完成後,在命令行輸入:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"

配置git帳號,此處的用戶名和郵箱便是在github上註冊的用戶名和使用郵箱,注意改爲本身的名字和郵箱shell

2.建立倉庫ruby

能夠新建個空文件夾或在已有項目的根目錄下打開終端,執行以下 git init 命令初始化倉庫,結果以下:ssh

git init
初始化空的 Git 倉庫於 /home/jieker/work/parking_web/parking/trunk/.git/

此處的trunk即時託管的項目,執行完以上命令項目文件夾會多出個.git目錄,若是看不到,表示隱藏了,按Ctrl+h鍵顯示分佈式

本地git倉庫就完成了ide

3.創建ssh連接工具

本地Git倉庫和GitHub倉庫之間的傳輸是經過SSH加密的,全部先建立ssh密鑰,執行命令:學習

ssh-keygen -t rsa -C "youremail@example.com"

注意改爲本身的郵箱,執行玩該命令後即會在用戶目錄下生成 .ssh 目錄,若是沒看到,表示隱藏了,按Ctrl+h鍵顯示

進入改目錄,能夠看到有兩個文件:id_rsa和id_rsa.pub。id_rsa是私鑰,id_rsa.pub是公鑰。

接下來要把公鑰加到github上

用gedit或其它工具打開id_rsa.pub,全選複製裏面的內容

登陸github,點左上角下拉選的settings

而後選擇 SSH and GPG keys,出現以下界面

點左上角New ssh key,把公鑰文件的內容複製進去,保存就能夠了

輸入 ssh -T git@github.com 命令進行測試

ssh -T git@github.com
The authenticity of host 'github.com (52.74.223.119)' can't be established. RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. Are you sure you want to continue connecting (yes/no)?

輸入yes按回車,出現如下提示代表成功

Hi jieker! You've successfully authenticated, but GitHub does not provide shell access.

4.本地git倉庫關聯遠程github倉庫

在github上創建和本地倉庫同樣名字的倉庫

用命令:git remote add origin 把本地庫和遠程庫關聯

git remote add origin git@github.com:jieker/trunk.git

此處沒提示,git不少時候沒提示就表明成功

在終端進入本地倉庫目錄

若是是空目錄,能夠加點文件

查看當前項目更改狀態:

git status

把更改加入暫存區:

git add .

提交更改:

git commit -m "第一次提交"

推送到遠程github倉庫

git push -u origin master

首次推送須要加 -u,有時候會提示你輸入密碼,輸入按回車便可

一切順利的話就到此結束了

附git團隊協做的工做流程

git支持不少種工做流程,咱們採用的通常是這樣,遠程建立一個主分支dev,本地每人建立功能分dev_youName支,平常工做流程以下:
去本身的工做分支
$ git checkout work
工做
....
提交工做分支的修改
$ git commit -a
回到主分支
$ git checkout master
獲取遠程最新的修改,此時不會產生衝突
$ git pull
回到工做分支
$ git checkout work
用rebase合併主幹的修改,若是有衝突在此時解決
$ git rebase master
回到主分支
$ git checkout master
合併工做分支的修改,此時不會產生衝突。
$ git merge work
提交到遠程主幹
$ git push
這樣作的好處是,遠程主幹上的歷史永遠是線性的。每一個人在本地分支解決衝突,不會在主幹上產生衝突。
不管是使用命令行仍是圖形化工具,思路基本是這樣

本文主要是簡單的介紹了git的使用,git的內容說多也很少,主要要多使用。

相關文章
相關標籤/搜索