Git 初始化項目、建立合併分支、回滾等經常使用方法總結

 

就在剛纔查看資料時候, 看見一句話, 寫的特別好: 當個人才華撐不起個人夢想的時候, 應該安靜下來學習git

 

配上我最喜歡動漫的一個角色: 紅蓮github

 

1. Git 初始化項目

 

1). 建立新的知識庫dom

                echo "# study_git" >> README.md
                git init
                git add README.md
                git commit -m "first commit"
                git remote add origin https://github.com/renfanzi/study_git.git
                git push -u origin master

2). 再次提交學習

          git add . 或者 git add test.py
                git commit -m "..."
                git push origin master

 

2. Git 建立分支

git checkout -b dev 建立dev分支, 並切換到dev分支中去spa

等同於:命令行

git branch dev 建立dev 分支
git checkout dev 切換分支


git branch 查看當前分支code

git branch -d dev 刪除dev分支blog

 

3. Git 合併分支內容

        git merge dev  命令用於合併指定分支到當前分支, 若是當前在master分支, 那麼這條命令就是把dev合併到master
        注意:
            若是文檔有衝突, 須要修正衝突之後再上傳

 

4. Git 回滾

1). git log 命令能夠幫咱們查看歷史記錄, 查看版本號, 若是以爲太眼花繚亂, 能夠加上 --pretty=onelinerem

                ===========
                root@corleone:/opt/code/my_code/git_study# git log
                commit 6c73f83caaefbaa7d19ca583a27cfebcd6c6f071 (HEAD -> master, origin/master)
                Author: root <root@localhost.localdomain>
                Date:   Tue Jul 10 15:37:00 2018 +0800

                    two commit

                commit ffc485e22ca1748d28d83f817cb5d8abbd7a0a5f
                Author: root <root@localhost.localdomain>
                Date:   Tue Jul 10 15:30:12 2018 +0800

                    first commit
                ===========

 

 

 

 

2). 兩種方式回滾文檔

方法1:

git reset --hard HEAD^ 

(在Git中,用HEAD表示當前版本,也就是最新的提交ffc485e22c...(注意個人提交ID和你的確定不同),
上一個版本就是HEAD^,上上一個版本就是HEAD^^,固然往上100個版本寫100個^比較容易數不過來,因此寫成HEAD~100。)

再次查看git log

                    -----------------------
                    root@corleone:/opt/code/my_code/git_study# git log 
                    commit ffc485e22ca1748d28d83f817cb5d8abbd7a0a5f (HEAD -> master)
                    Author: root <root@localhost.localdomain>
                    Date:   Tue Jul 10 15:30:12 2018 +0800

                        first commit
                    root@corleone:/opt/code/my_code/git_study# 
                    ----------------------

                已經回滾到上一級了

 

方法2:

git reset --hard 6c73f83caa 等同於上面

 

 

 

3). git 回滾到之前被掩蓋覆蓋的版本中

方法一:

只要上面的命令行窗口尚未被關掉,你就能夠順着往上找,找到那個commit 的commit ID,因而就能夠指定回到指定版本


方法二:

git reflog ---> 做用: 記錄你的每一次的命令


終端返回值:
====================
root@corleone:/opt/code/my_code/git_study# git reflog
6c73f83 (HEAD -> master, origin/master) HEAD@{0}: reset: moving to 6c73f83caa
6c73f83 (HEAD -> master, origin/master) HEAD@{1}: reset: moving to 6c73f83caa
ffc485e HEAD@{2}: reset: moving to HEAD^
6c73f83 (HEAD -> master, origin/master) HEAD@{3}: commit: two commit
ffc485e HEAD@{4}: commit (initial): first commit
===================

 

5. 經常使用命令

        git diff readme.md  查看文件被改變狀態(以提交一次, 繼續工做, 許久後忘記哪些地方修改了, 能夠用這個命令)
            ======
            root@corleone:/opt/code/my_code/git_study# git diff readme.md
            diff --git a/readme.md b/readme.md
            index e69de29..bca558b 100644
            --- a/readme.md
            +++ b/readme.md
            @@ -0,0 +1,2 @@
            +asdfadsf
            +
            ======
        git reflog ---> 做用: 記錄你的每一次的命令

        git log 命令能夠幫咱們查看歷史記錄, 查看版本號
        
        git reset --hard HEAD^ 
        git reset --hard 6c73f83caa 等同於上面

        git clone https://... 克隆項目

 

6. .gitignore 的做用

把要忽略的文件名填進去,Git就會自動忽略這些文件。

相關文章
相關標籤/搜索