主頁(yè) > 知識(shí)庫(kù) > Git命令的簡(jiǎn)單整理大全

Git命令的簡(jiǎn)單整理大全

熱門(mén)標(biāo)簽:美圖手機(jī) 智能手機(jī) 鐵路電話系統(tǒng) 檢查注冊(cè)表項(xiàng) 銀行業(yè)務(wù) 呼叫中心市場(chǎng)需求 服務(wù)器配置 網(wǎng)站文章發(fā)布

前言

自動(dòng)幫助記錄每次文件的改動(dòng),同時(shí)協(xié)作永工作

學(xué)習(xí)git命令是充分必要的

集中式和分布式

分布式每個(gè)人電腦都是一個(gè)完整的版本庫(kù),也有類似中央服務(wù)器的電腦,但是這個(gè)服務(wù)器只是用來(lái)交互打架的修改沒(méi)有它大家也一樣干活,只是交互修改不方便而已

安裝只要安裝了xcode就可以了

倉(cāng)庫(kù):里面文件修改,刪除,添加都能被git追蹤,認(rèn)識(shí)時(shí)刻都能追蹤歷史或者將來(lái)某哥時(shí)刻還原只能追蹤文本文件的改動(dòng)

創(chuàng)建目錄和查看路徑

mkdir 創(chuàng)建目錄  
cd    進(jìn)入到目錄里面
pwd   用于顯示當(dāng)前的目錄
cat   查看文件內(nèi)容

Git命令使用說(shuō)明

初始化一個(gè)目錄成git的倉(cāng)庫(kù)(版本庫(kù))包括暫存區(qū)和master分支
git init查看當(dāng)前目錄的文件包括隱藏文件
ls -ah獲取git命令的手冊(cè)頁(yè)
git help使用git前需要進(jìn)行一些全局的配置

> 1、用戶目錄下的配置,當(dāng)前登陸用戶所有的倉(cāng)庫(kù)調(diào)用這個(gè)配置 ~/.gitconfig

> 2、項(xiàng)目目錄的配置,優(yōu)先級(jí)高,覆蓋全局配置配置用戶名和郵箱

git config --global user.name "wirelessqa"
git config --global user.email wirelessqa.me@gmail.com
git config --global color.ui true 讓Git顯示顏色,會(huì)讓命令輸出看起來(lái)更醒目

.gitignore 配置 不納入git管理 主要是系統(tǒng)文件,編譯文件,自定義的文件 ,這個(gè)文件也用推送到遠(yuǎn)程庫(kù)

https://github.com/github/gitignore ,創(chuàng)建 touch 命令

配置編輯器 git在需要輸入一些消息

git config --global core.editor emacs

配置比較工具

git config --global merge.tool vimdiff

讀取配置(同一個(gè)配置選項(xiàng)會(huì)出現(xiàn)多次,以最后一次為準(zhǔn))

git config --list

提交文件之前

先查看當(dāng)前的狀態(tài) ,能提示你接下來(lái)怎么做的命令,比如修改工作區(qū)文件內(nèi)容,提示你添加到暫存區(qū)或者丟棄工作區(qū)修改的命令

git status

查看文件到底修改了什么

git diff

提交修改

納入git倉(cāng)庫(kù)管理,把修改添加到暫存區(qū)(使用.代表將所有的修改進(jìn)行添加)

git add .

把暫存區(qū)里面的所有修改提交到當(dāng)前分支同時(shí)創(chuàng)建一個(gè)快照

git commit -m ""

如果確認(rèn)當(dāng)前所有變更都是同一個(gè)commit,可以直接加-a,就不必一個(gè)一個(gè)add了

git commit -a -m ""

工作區(qū)和版本庫(kù)里最新版本的區(qū)別

git diff HEAD -- readme.txt

查看提交歷史

git log --pretty=oneline

撤銷修改

git checkout -- readme.txt

> 1、修改后還沒(méi)添加到暫存區(qū) ,撤銷修改回到最近一次commit的狀態(tài),也就是和版本庫(kù)里面的狀態(tài)一樣

> 2、修改后被添加到暫存區(qū)了,又做了修改 ,撤銷修改就回到添加到暫存區(qū)后的狀態(tài),也就是跟暫存區(qū)里面的狀態(tài)保持一致

> 3、用版本庫(kù)里的版本替換工作去的版本,無(wú)論工作區(qū)是修改還是刪除

可以把暫存區(qū)的修改撤銷掉

git reset HEAD file

提交文件刪除修改到暫存區(qū)

git rm test.txt

版本回退

git的版本回退知識(shí)改了head 指針,順便把工作區(qū)的文件更新掉了

git reset --hard HEAD^
或
git reset --hard 3628164

查看命令歷史

可以看到reset和commit等命令歷史,可以利用這個(gè)命令查看最近一次

commitidgit reflog

工作區(qū)和暫存區(qū)

工作區(qū):電腦上能看到的目錄 ,里面有個(gè).git 隱藏目錄這個(gè)不算工作區(qū),是git的版本庫(kù)版本庫(kù)里面包含了暫存區(qū)stage和git為我們自動(dòng)創(chuàng)建第一個(gè)分支

遠(yuǎn)程庫(kù)管理

查看遠(yuǎn)程庫(kù)信息

git remote -v

修改遠(yuǎn)程倉(cāng)庫(kù)地址(在已經(jīng)add了遠(yuǎn)程倉(cāng)庫(kù)地址,使用它進(jìn)行修改地址)

git remote set-url origin https://github.com/USERNAME/OTHERREPOSITORY.git

關(guān)聯(lián)遠(yuǎn)程庫(kù)(添加遠(yuǎn)程倉(cāng)庫(kù)地址)

git remote add origin git@github.com:linhbcode/first-test.git

本地的master分支推送到遠(yuǎn)程的master分支上,原則就是master分支要與遠(yuǎn)程同步 ,dev 分支開(kāi)發(fā)分支,也需要遠(yuǎn)程同步

git push origin master 

master分支推送到遠(yuǎn)程的master分支,本地master 分支和遠(yuǎn)程master分支建立關(guān)聯(lián)

git push -u origin master

Git自動(dòng)把本地的master分支和遠(yuǎn)程的master分支對(duì)應(yīng)起來(lái)了,并且,遠(yuǎn)程倉(cāng)庫(kù)的默認(rèn)名稱是

origingit clone git@github.com:linhbcode/first-test.git

git pull 如果提示沖突解決沖突 抓去信息碰到?jīng)]有鏈接的 有兩種方式解決

> 1、git branch --set-upstream branch-name origin/branch-name 建立本地分支和遠(yuǎn)程分支的關(guān)聯(lián)

> 2、git pull origin branchname

分支管理

1、不完整的代碼在其它分支上提交

2、每個(gè)提交都在一個(gè)時(shí)間線上的節(jié)點(diǎn)上,分支相當(dāng)于指向一個(gè)節(jié)點(diǎn)的指針

head 本質(zhì)上是指向分支的指針

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

git checkout -b dev

本地分支創(chuàng)建和遠(yuǎn)程分支相同的分支,主要是倉(cāng)庫(kù)從遠(yuǎn)程clone過(guò)來(lái)的(一般要先git fetch,再git checkout -b branch-name origin/branch-name)

git checkout -b branch-name origin/branch-name

創(chuàng)建分支

git branch dev

切換分支 , 如果當(dāng)前的工作只完成一半,還沒(méi)發(fā)提交的話

git checkout dev

可以用 git stash 保存工作現(xiàn)場(chǎng) ,在用它之前可以 git stash list 查看有幾個(gè)暫存的列表

查看有幾個(gè)暫存的列表

git stash list

保存工作現(xiàn)場(chǎng)

git stash

恢復(fù) 工作現(xiàn)場(chǎng)

git stash apply

來(lái)刪除 工作現(xiàn)場(chǎng)

git stash drop

查看當(dāng)前分支

git branch

查看遠(yuǎn)程分支

git branch -r

合并分支

git merge dev

刪除分支

git branch -d dev

強(qiáng)行刪除分支

git branch -D dev

(刪除遠(yuǎn)程分支)冒號(hào)前面的空格不能少,原理是把一個(gè)空分支push到server上,相當(dāng)于刪除該分支。

git push origin :branch-name

提交本地test分支作為遠(yuǎn)程的master分支

git push origin test:master

提交本地test分支作為遠(yuǎn)程的test分支

git push origin test:test

剛提交到遠(yuǎn)程的test將被刪除,但是本地還會(huì)保存的,不用擔(dān)心

git push origin :test

查看分支合并圖

git log --graph

查看提交歷史

git log --pretty=oneline --abbrev-commit

合并分支

git merge branchname

合并分支的時(shí)候不采用ff模式(分支刪除了還能看的到分支歷史信息)

git merge --no-ff -m "merged bug fix 101" issue-101

標(biāo)簽管理

描述開(kāi)發(fā)歷程,在發(fā)布一個(gè)版本的時(shí)候打一個(gè)標(biāo)簽

查看所有的標(biāo)簽

git tag

對(duì)莫一個(gè)提交歷史打一個(gè)標(biāo)簽

git tag v1.0 [commit id]

查看標(biāo)簽信息

git show [tagname]

正式開(kāi)發(fā)下最好用這條語(yǔ)句標(biāo)注下這個(gè)標(biāo)簽的描述

git tag -a v0.1 -m "version 0.1 released" 3628164

刪除標(biāo)簽

git tag -d v0.1

推送標(biāo)簽

git push origin v1.0

推送全部標(biāo)簽

git push origin --tags

遠(yuǎn)程刪除標(biāo)簽(先從本地刪除標(biāo)簽)

git push origin :refs/tags/v0.9

結(jié)語(yǔ)

目前就整理了些常用的命令,足夠?qū)Ω镀匠5墓ぷ髁耍绻蠹疫€想讀讀Git原理的話,建議看看原文地址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001373962845513aefd77a99f4145f0a2c7a7ca057e7570000,里面講的特別全。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

您可能感興趣的文章:
  • Git代碼提交流程及git命令匯總(基礎(chǔ)篇)
  • Linux中Git集中操作命令匯總
  • 解決因文件權(quán)限導(dǎo)致git fetch命令執(zhí)行失敗的問(wèn)題
  • Git pull命令與fetch命令的區(qū)別
  • Git 常用命令速查表(圖文+表格)
  • 分享下自己總結(jié)的Git常用命令
  • git blame命令詳解

標(biāo)簽:沈陽(yáng) 長(zhǎng)治 滄州 紅河 樂(lè)山 新疆 河南 上海

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Git命令的簡(jiǎn)單整理大全》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266