轉: Git 常用命令總結 2018-11-21

git的一些基礎命令

Git常用命令

請確保已經安裝了git客戶端

一般配置

git --version//查看git的版本信息

git config --globaluser.name//獲取當前登錄的用戶

git config --globaluser.email//獲取當前登錄用戶的郵箱

登錄git

/* 如果剛沒有獲取到用戶配置,則只能拉取代碼,不能修改? 要是使用git,你要告訴git是誰在使用*/

git config --globaluser.name'userName'//設置git賬戶,userName為你的git賬號,

git config --globaluser.email'email'

創(chuàng)建一個文件夾

mkdir nodejs//創(chuàng)建文件夾nodejs

cd nodejs//切換到nodejs目錄下

初始化git倉庫

git init //在nodejs文件夾下初始化一個倉庫,此時文件里會到一個.git的隱藏文件夾

創(chuàng)建忽略文件

touch .gitignore//不需要服務器端提交的內容可以寫到忽略文件里

/*

? ? ? ? .git

? ? ? ? .idea

? ? */

查看目錄

ls -al

創(chuàng)建文件并寫入內容

如果文件不存在則會創(chuàng)建文件

echo"hello git"

>index.html//將'hello git' 寫入到index.html中

單個>箭頭表示寫入, >>表示追加

查看文件內容

catindex.html

增加到暫存區(qū)中

gitaddindex.html

gitadd-A//全部添加到緩存區(qū)

增加到版本庫中

gitcommit-m'備注信息'

查看版本

gitlog--oneline

比較差異

比較的是暫存區(qū)和工作區(qū)的差異

git diff

比較的是暫存區(qū)和歷史區(qū)的差異

git diff--cached

比較的是歷史區(qū)和工作區(qū)的差異(修改)

git diff master

撤回內容

(如果修改了工作區(qū)的文件后發(fā)現改錯了,可以用暫存區(qū)或者版本庫里的文件替換掉工作區(qū)的文件)

用暫存區(qū)中的內容或者版本庫中的內容覆蓋掉工作區(qū)

gitcheckoutindex.html

取消增加到暫存區(qū)的內容(添加時)

gitresetHEADindex.html

//顯示目錄的狀體 有沒有添加或者修改文件

gitstatus

刪除本地文件

rm fileName

刪除暫存區(qū)

保證當前工作區(qū)中沒有index.html

gitrmindex.html--cached

使用--cached 表示只刪除緩存區(qū)中的內容

回滾版本

回滾最近的一個版本 git log

gitreset--hard HEAD/commit_id

回滾到未來

git reflog

分支管理

創(chuàng)建分支

git branch dev

切換分支

git checkout dev

創(chuàng)建分支并切換分支

git checkout -b dev

刪除分支

git branch -d dev

在分支上提交新的版本

gitcommit-a -m'dev1'

合并分支

gitmergedev

分支的合并后顯示log

gitlog--oneline --graph --decorate

在分支開發(fā)的過程中遇到其他問題需要切換其他分支

保留寫好的內容在切換到主干

保留內容

git stash

在次切換分之后需要應用一下保留的內容

git stash apply

丟掉保存的內容

git stashdrop

使用并丟掉

git stashpop

最佳分支

-有的時候開發(fā)需要合并指定的內容,而不是合并所有的提交,所以我們需要挑選最好的,自己生產版本

合并分支把樹杈掰到主干上

git rebase

添加遠程的倉庫

push -u

-u參數 upstream

git push origin master -u//獲取最新代碼

連接遠程倉庫

git remoteaddorigin 倉庫的地址

查看遠程倉庫

git remote -v

刪除遠程倉庫

git remote rm origin

git常用命令

安裝及配置:

Ubuntu下安裝:sudo apt-get install git

配置用戶名:git config --global user.name "你的名字"

配置e-mail:git config --global user.email "你的郵箱@xx.com"

與添加有關的:

將當前目錄變?yōu)閭}庫:git init

將文件添加到暫存區(qū):git add 文件名 [可選:另一個文件名]

將暫存區(qū)提交到倉庫:git commit –m "描述"

與查詢有關的:

查詢倉庫狀態(tài):git status

比較文件差異(請在git add之前使用):git diff 文件名

查看倉庫歷史記錄(詳細):git log

查看倉庫歷史記錄(單行):git log --pretty=online或git log --online

查看所有版本的commit ID:git reflog

與撤銷有關的:

撤銷工作區(qū)的修改:git checkout -- 文件名

撤銷暫存區(qū)的修改:git reset HEAD 文件名

回退到歷史版本:git reset --hard 該版本ID

回退到上個版本:git reset --hard HEAD^

上上版本是HEAD^^,也可用HEAD~2表示,以此類推

與標簽有關的:

為當前版本打標簽:git tag 標簽名

為歷史版本打標簽:git tag 標簽名 該版本ID

指定標簽說明:git tag –a 標簽名 –m "標簽說明" [可選:版本ID]

查看所有標簽:git tag

查看某一標簽:git show 標簽名

刪除某一標簽:git tag –d 標簽名

與GitHub有關的:

先有本地庫,后有遠程庫,將本地庫push到遠程庫

關聯本地倉庫和GitHub庫:git remote add origin 網站上的倉庫地址

第一次將本地倉庫推送到GitHub上:git push –u origin master

先有遠程庫,后有本地庫,從遠程庫clone到本地庫

從遠程庫克隆到本地:git clone 網站上的倉庫地址

網站地址可以選擇HTTPS協(xié)議(https://github.com...)、SSH協(xié)議(git@github.com...)。

如果選擇SSH協(xié)議,必須將Ubuntu的公鑰添加到GitHub上。見下一步

SSH Key

生成SSH Key:ssh-keygen –t rsa –C "你的郵箱@xx.com"

生成Key時彈出選項,回車選擇默認即可。

Key保存位置:/root/.ssh

登陸GitHub,創(chuàng)建new SSH key,其內容為/root/.ssh/id_rsa.pub中文本

已經有了本地庫和遠程庫,二者實現同步

本地庫的改動提交到遠程庫:git push origin master

更新本地庫至遠程庫的最新改動:git pull

轉載地址:https://www.cnblogs.com/libin-1/p/5918468.html

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,863評論 9 163
  • Git常用語法 [TOC] Git簡介 描述 ? Git(讀音為/g?t/。)是一個開源的分布式版本控制系統(tǒng),...
    君惜丶閱讀 3,963評論 0 13
  • Git 基礎 基本原理 客戶端并不是只提取最新版本的文件快照,而是把代碼倉庫完整的鏡像下來。這樣一來,任何一處協(xié)同...
    __silhouette閱讀 16,221評論 5 147
  • 2016年的最后一點時間該怎樣度過?或許每年這個時候是一個特別的時刻,好多人不約而同的都會來紀念一下,或者激動興喜...
    hoping牧陽閱讀 179評論 0 0
  • 做產品經理滿打滿算也有3年多了,最近覺得需要將知識結構進行一下梳理,不然歲數大了容易忘記,我是一名信息安全行業(yè)的產...
    江南北閱讀 1,156評論 1 1

友情鏈接更多精彩內容