1) 遠端倉庫相關命令
檢出倉庫:$ git clone git:*如果想把本地的某個分支test提交到遠端倉庫,並作為遠端倉庫的master分支,或者作為另外乙個名叫test的分支,如下:檢視遠端倉庫:$ git remote -v 或者$git remote show [remotename]
新增遠端倉庫:$ git remote add [name] [url]
刪除遠端倉庫:$ git remote rm [name]
修改遠端倉庫:$ git remote 遠端倉庫名 set-url [url]
拉取遠端倉庫:$ git pull [remotename] [localbranchname]
推送遠端倉庫:$ git push [remotename] [localbranchname]
$git push origin test:master // 提交本地test分支作為遠端的master分支2)分支(branch)操作相關命令$git push origin test:test // 提交本地test分支作為遠端的test分支
檢視本地分支:$ git branch3)版本(tag)操作相關命令檢視遠端分支:$ git branch -r
建立本地分支:$ git branch [name] ----注意新分支建立後不會自動切換為當前分支
切換分支:$ git checkout [name]
建立新分支並立即切換到新分支:$ git checkout -b [name]
刪除分支:$ git branch -d [name] ---- -d選項只能刪除已經參與了合併的分支,對於未有合併的分支是無法刪除的。如果想強制刪除乙個分支,可以使用-d選項
合併分支:$ git merge [name] ----將名稱為[name]的分支與當前分支合併
刪除遠端分支:$git branch -dr [name]
檢視版本:$ git tag建立版本:$ git tag [name]
刪除版本:$ git tag -d [name]
檢視遠端版本:$ git tag -r
建立遠端版本(本地版本push到遠端):$ git push origin [name]
刪除遠端版本:$ git push origin :refs/tags/[name]
合併遠端倉庫的tag到本地:$ git pull origin --tags
上傳本地tag到遠端倉庫:$ git push origin --tags
建立帶注釋的tag:$ git tag -a [name] -m 'yourmessage'
4)恢復和比較$git reflog 檢視提交的版本資訊
$git reset 版本名 將暫存區和本地倉庫恢復到指定版本
$git reset --hard 版本名 將暫存區、本地倉庫、工作區恢復到指定版本
$git reset --hard head~3 恢復到最後第三次的版本
$git reset --sorf 版本名 將緩衝區恢復為哪個版本,工作區不變
$git checkout * 恢復暫存區所有檔案到工作區
$git checkout 檔名 恢復暫存區指定檔案到工作區
$git diff 比較工作區與暫存區的區別
$git diff --cached 比較暫存區與當前分支倉庫區別
$git diff 遠端主機名(倉庫)/遠端分支名 本地分支 比較遠端分支和本地分支的區別
git 常用命令
git config --list 看所有使用者
git常用命令:
git init #建立乙個git檔案,用作在本地建立git倉庫
git add 檔案 #新增指定檔案到暫存區(跟蹤檔案)
git rm --cached -r 檔案 #刪除緩衝區檔案(即刪除追蹤)
git rm -rf檔案 #刪除暫存區裡的檔案和工作區,多個用空格分開
git ls-files 檢視暫存區裡的檔案
git mv 舊檔名 新檔名 #將工作區的檔名改了新增到暫存區
git commit -m "message" #將暫存區裡的內容提交到倉庫(當前分支版本)
git checkout 檔名 #將暫存區的某個檔案恢復到工作區
git checkout * #恢復暫存去所有檔案到工作區
git reset --hard 分支(即分支倉庫) #恢復某個分支版本庫到暫存區和工作區
git remote add 遠端主機名 位址 #新增遠端倉庫git remote add origin
git remote #檢視遠端倉庫名
git remote -v #檢視遠端倉庫和詳細資訊
git branch -r #檢視遠端分支
git branch -a #檢視所有分支
git checkout -b 分支名 #建立分支且切換到該分支
git checkout tag名字 #切換到tag版本git branch 分支名 #建立分支
git checkout 分支名 #切換到該分支
git branch -d 分支名 #刪除本地分支
git branch -dr 分支名 #刪除遠端分支
git status #檢視當前分支修改的檔案且還未提交
git diff #檢視工作區和暫存區有什麼不同
git diff --cached #檢視暫存區與當前分支倉庫(當前分支倉庫)有什麼不同
git diff 遠端主機名 分支 #檢視當前分支倉庫與遠端倉庫有什麼不同
git fetch 遠端主機 分支 #取回遠端倉庫的分支(即分支版本庫)
理解 fetch 的關鍵, 是理解 fetch_head,fetch_head指的是: 某個branch在伺服器上的最新狀態』。這個列表儲存在 .git/fetch_head 檔案中, 其中每一行對應於遠端伺服器的乙個分支。
當前分支指向的fetch_head, 就是這個檔案第一行對應的那個分支.
一般來說, 存在兩種情況:
這個操作是git pull origin branch1的第一步, 而對應的pull操作,並不會在本地建立新的branch。設定當前分支的 fetch_head' 為遠端伺服器的branch1分支`。git fetch origin branch1
這個命令可以用來測試遠端主機的遠端分支branch1是否存在, 如果存在, 返回0, 如果不存在, 返回128, 丟擲乙個異常.
fetch更新本地倉庫兩種方式:git fetch origin branch1:branch2
git merge 分支名 #合併該分支到本分支 (一般加上 --allow-unrelated-histories)//方法一
$ git log -p master.. origin/master//比較本地的倉庫和遠端參考的區別
//方法二
$ git diff temp//比較master分支和temp分支的不同
$ git merge temp//合併temp分支到master分支
$ git branch -d temp//刪除temp
git pull 遠端主機名 遠端分支:本地分支 #取回遠端倉庫的分支(即分支版本庫)並合併到本分支
git push 遠端主機名 本地分支 :遠端分支 #將本地分支倉庫推送到遠端倉庫的固
定分支git log #檢視所有提交的版本資訊
git reflog #檢視所有操作記錄和對應版本git reset 版本名 #將暫存區和本地倉庫恢復到該版本時的情況
git reset --hard 版本名 #將暫存區和本地倉庫和工作區恢復到該版本時的情況
git reset --hard head~3 #恢復到最後第三次提交時的版本 head表示當前版本、
head^最後一次提交的版本
git clone 版本庫** 本地目錄名 #如 git clone
從遠端倉庫轉殖指定版本到本地
git push 被拒絕的情況
1.因為當前分支的最新提交落後於其對應的遠端分支,所以我們先從遠端庫fetch到更新再和本地庫合併,之後就可以git push操作了。
![rejected] non-fast-forward
2.在**上改了readme.md檔案,新增一些專案的說明,然後用git push時,需要沒有將遠端倉庫合併在本地(更新伺服器變化)然後在push
![rejected] fetch-first
git log 看你commit的日誌
git stash push 將檔案給push到乙個臨時空間中
git stash pop 將檔案從臨時空間pop下來
常用命令 Git 常用命令大全
安裝教程可參照 廖雪峰老師的安裝教程。git config 在git中,使用git config 命令來配置 git 的配置檔案,git配置級別主要有3類 1 倉庫級別 local 本地 git 倉庫級別配置檔案,作用於當前倉庫。優先順序最高 2 使用者級別 global,全域性配置檔案,作用於所有...
git 常用命令
檢視是否存在檔案需要上傳 git status git add git commit m 建立遠端倉庫 git remote add origin 116.255.146.153 ruby cd work daily project.git 更新git fetch 116.255.146.153 r...
git常用命令
詳細 1,git log p 命令來顯示每一次提交與其父節點提交內容之間快照的差異。2,為了檢視載入 staged 而並未提交 not committed 的內容差異,可以使用 git diff stage 命令 在git 1.6之前的版本中,使用 cached 適應情形 在執行git commit...