Git的基本操作


基本操作


安裝與配置

$ git config --global user.name "runoob"
$ git config --global user.email test@runoob.com
$ git config --global core.editor Vim//指定文本編輯器
$ git config --list //查看配置信息

init

//初始化
git init

//創建與初始化 
git init newrepo

add與commit

git add *.c
git add README
git commit -m '初始化項目版本'
git status -s //查看項目的當前狀態。

git add 快照的內容寫入緩存區

git commit 將緩存區內容添加到倉庫中。

clone

$ git clone  https://github.com/zhaoqize/study-work.git study-work

vim

//用vim編輯器打開a或並創建a文件
vim a 

AM狀態的意思是,這個文件在我們將它添加到緩存之后又有改動

status

//命令用於查看項目的當前狀態。命令的時候加了 -s 參數,以獲得簡短的結果輸出。
git status -a

diff

git diff 
  • 尚未緩存的改動:git diff
  • 查看已緩存的改動: git diff --cached
  • 查看已緩存的與未緩存的所有改動:git diff HEAD
  • 顯示摘要而非整個 diff:git diff --stat

rm(刪除文件)

git rm file 

注意:這里的rm只能刪除已經add並且已經commit到git中的文件。

恢復文件

假如刪除文件之后,我們想恢復文件。不用擔心,git中的本地版本中都有記錄。

使用:git ls-files --deleted 查看刪除的文件

使用:git checkout a恢復被刪除的文件
  

MV(重命名)

git mv 原文件名 新文件名

刪除tag

git push origin --delete tag <tagname>

Git分支操作

創建本地分支:git branch (branchname)

查看本地分支:git branch

查看遠程倉庫分支:git branch -r

查看遠程與本地的所有分支:git branch -a

切換分支:git chenckout branchname

創建與進入分支:git checkout -b (branchname)

刪除分支本地分支:git branch -d (branchname)

刪除遠程倉庫分支: git push origin --delete (branchName)

不合並強制刪除分支git branch -D (branchname)

創建分支,進入分支創建新文件,返回主線,可以看到文件也存在於主線

刪除支線分支,不影響主線

使用分支將工作切分開來,從而讓我們能夠在不同上下文中做事,並來回切換

查看文件內容 cat + 文件名

這里我們實例操作:以https://github.com/zhaoqize/node-scanDeskImg.git為例子

1.clone倉庫至本地

git clone https://github.com/zhaoqize/node-scanDeskImg.git [name]

這時候我們打開文件夾,看到里面的文件是github的master分支上的文件。

total 6
-rw-r--r-- 1 Administrator 197121 2964 一月 20 10:42 app.js
-rw-r--r-- 1 Administrator 197121   73 一月 20 10:42 package.json
-rw-r--r-- 1 Administrator 197121  338 一月 20 10:42 README.md

2.需要進入electron分支操作。

先通過命令git branch -r查看clone的倉庫分支情況。

origin/HEAD -> origin/master
origin/electron
origin/master

3.checkout我們需要的electron的分支代碼並創建一個本地分支[分支名稱與遠程倉庫的一樣最好]。

git checkout -b electron origin/electron

現在我們再來查看我們文件夾中的目錄

total 14
-rw-r--r-- 1 Administrator 197121 3290 一月 20 10:47 app.js
-rw-r--r-- 1 Administrator 197121 1780 一月 20 10:47 index.html
-rw-r--r-- 1 Administrator 197121 1082 一月 20 10:47 main.js
-rw-r--r-- 1 Administrator 197121  271 一月 20 10:47 package.json
-rw-r--r-- 1 Administrator 197121  193 一月 20 10:47 README.md

4.修改代碼

5.提交緩存與提交。

Administrator@RWERNNQIG0NBUI2 MINGW32 /d/node-scanDeskImg (electron)
$ git commit -m'qiniu'
[electron b088f1b] qiniu
 1 file changed, 1 insertion(+)

6.提交至遠程分支electron

git push origin electron

查看歷史記錄

git log --oneline
$ git log --oneline --graph  //查看歷史中什么時候出現了分支、合並。以下為相同的命令,開啟了拓撲圖選項

逆向顯示所有日志 git log --reverse --onelin

添加標簽

git tag查看所有標簽

git tag -a 帶-a就是一個帶注解的標簽

清屏

clear

撤銷修改


  • 撤銷工作區的修改
git checkout -- file
  • 撤銷暫存區的修改
git reset HEAD file
  • 撤銷已經commit的修改
git reset --hard HEAD^ 撤銷到上一次的commit 
git reset --hard HEAD^^ 撤銷到上上次的commit 
git reset --hard HEAD~100 撤銷到之前第100的commit 
git reset --hard 版本號 撤銷或者回到指定的版本號
  • 版本比對
    查看工作區文件與版本區的區別
git diff HEAD -- readme.txt


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM