git 使用命令

一.添加遠程庫


1.

$ git remote add origin git項目地址

2.把本地庫的所有內容推送到遠程庫上,記得如果報錯

error: src refspec master does not match any,則先add添加文件然後commit

$ git push -u origin master

以後每次修改可以 git push origin master推送到服務器


二.克隆遠程庫用命令git clone +項目地址


$ git clone http://github.com/wylb/gitskills.git


三. 創建dev分支,然後切換到dev分支


$ git checkout -b dev
等價於

$ git branch dev
$ git checkout dev

查看分支:git branch

創建分支:git branch <name>

切換分支:git checkout <name>

創建+切換分支:git checkout -b <name>

合併某分支到當前分支:git merge <name>

刪除分支:git branch -d <name>

git branch -D <name>


四. 解決衝突


1. 先使用 git status查看衝突文件
2.修改衝突文件
3.是用 git add 添加文件
4. 提交衝突文件
5.git push推送到遠程

  注意: git log也可以看到分支的合併情況

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

通常,合併分支時,如果可能,Git會用Fast forward模式,但這種模式下,刪除分支後,會丟掉分支信息。

--no-ff方式的git merge可以強制禁用Fast forward模式,Git就會在merge時生成一個新的commit,這樣,從分支歷史上就可以看出分支信息。


五. 儲藏分支


當你接到一個修復bug的任務時,很自然地,你想創建一個分支issue來修復它,但是,等等,當前正在dev上進行的工作還沒有提交,並不是你不想提交,而是工作只進行到一半,還沒法提交。

幸好,Git還提供了一個stash功能,可以把當前工作現場“儲藏”起來,等以後恢復現場後繼續工作

$ git stash
修改完bug後可以git stash list命令,查看剛纔儲藏的分支

恢復分支有兩個辦法:

一是用git stash apply恢復,但是恢復後,stash內容並不刪除,你需要用git stash drop來刪除;

另一種方式是用git stash pop,恢復的同時把stash內容也刪了:

$ git stash apply stash@{0}          恢復到指定的stash


六.查看遠程分支


$ git remote
git remote -v顯示更詳細的信息


  • 查看遠程庫信息,使用git remote -v

  • 本地新建的分支如果不推送到遠程,對其他人就是不可見的;

  • 從本地推送分支,使用git push origin branch-name,如果推送失敗,先用git pull抓取遠程的新提交;

  • 在本地創建和遠程分支對應的分支,使用git checkout -b branch-name origin/branch-name,本地和遠程分支的名稱最好一致;

  • 建立本地分支和遠程分支的關聯,使用git branch --set-upstream branch-name origin/branch-name

  • 從遠程抓取分支,使用git pull,如果有衝突,要先處理衝突

如果git pull提示“no tracking information”,則說明本地分支和遠程分支的鏈接關係沒有創建,用命令git branch --set-upstream branch-name origin/branch-name


七. 創建標籤


1.命令git tag <name>就可以打一個新標籤

2. git tag查看所有標籤

3. 爲之前的某一次提交打標籤

$ git tag v0.9 6224937  標籤的id

4.git show <tagname>查看標籤信息

5.創建帶有說明的標籤,用-a指定標籤名,-m指定說明文字

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

6.未推送到遠程的標籤 刪除

$ git tag -d v0.1

7.推送某個標籤到遠程,使用命令git push origin <tagname>

8.一次性推送全部尚未推送到遠程的本地標籤

$ git push origin --tags

9.刪除遠程標籤

先從本地刪除

$ git tag -d v0.9
然後,從遠程刪除

$ git push origin :refs/tags/v0.9

發佈了12 篇原創文章 · 獲贊 6 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章