經常使用 Git 命令行

Git 新建本地倉庫:

#1 會在項目中出現.git文件夾
git init
複製代碼

Git 下載遠程代碼:

#1 示例:git@gitlab.yongzhuan.net:caodd/stock-allocation-pc.git
git clone + url地址
複製代碼

Git 查看當前分支修改內容狀態:

#1 查看當前分支修改的文件
git status
複製代碼

Git 查看分支:

#1 查看全部分支列表(本地 和 遠程)
git branch -a

#2 查看本地分支,而且在當前分支的前面用"*"標記
git branch

#3 查看遠程版本庫分支
git branch -r
複製代碼

Git 重命名本地/遠程分支:

#1 重命名本地分支(無論是否在當前分支,均可以修改)
git branch -m <old_branch> <new_branch>

#2 重命名遠程分支
    1. 修改本地分支名
    git branch -m <old_branch> <new_branch>
    2. 刪除要修改的遠程分支名
    git push origin --delete <old_branch>
    3. 將更名後的分支push到遠程
    git push origin <new_branch>
複製代碼

Git 更新內容放入暫存區:

#1 單個文件放入暫存區
git add <filename>

#2 全部文件放入暫存區
git add .
複製代碼

Git 提交暫存區的內容:

#1 提交暫存區的內容
git commit -m" the commit message "

#2 增補提交. 會使用與當前提交節點相同的父節點進行一次新的提交,舊的提交將會被取消
git commit --amend
複製代碼

Git 拉取遠程代碼:

#1 拉取遠程指定分支代碼
git pull origin <origin_branch>

#2 拉取遠程全部分支代碼
git pull
複製代碼

Git 推送到遠程代碼:

#1 拉取遠程指定分支代碼
git push origin <origin_branch>
複製代碼

Git 切換分支 / 建立並切換到本地新分支:

#1 切換分支(commit以後方可切換分支)
git checkout <branch_name>

#2 建立並切換到新的分支(這個命令是將 git branch <new_branch> 和 git checkout <new_branch> 合併在一塊兒的結果)
git checkout -b <new_branch>
複製代碼

Git 放棄修改:

#1 放棄單個文件的修改,即刪除修改(注意:該文件沒有暫存或者提交改動,已經暫存或者提交改動的不受影響)
git checkout -- <filename>

#2 放棄當前目錄下的修改,即刪除修改
git checkout .
複製代碼

Git 拉取遠程分支到本地:

#1 方法一:
    1. 拉取遠程分支並更新本地分支(遠程分支拉取到本地後 git branch 不會顯示出來,因此須要進行 第二步 )
    git pull
    2.切換到遠程拉取到本地的分支上
    git checkout <branch_name>

#2 拉取遠程分支並建立本地分支
git checkout -b <local_branch> origin/<origin_branch>
複製代碼

Git 刪除本地分支:

#1 刪除本地分支 (須要先checkuout到本地別的分支上,再進行刪除)
git branch -d <branch_name>

#2 若是有未merge的提交,那麼刪除分支失敗 ,此時能夠進行強制刪除分支
git branch -D <branch_name>
複製代碼

Git 刪除遠程分支:

#1 方法一:
git push origin --delete <origin_branch>

#2 方法二:
git push origin :<origin_branch>
複製代碼

Git 查看日誌(日誌即分支的歷史合併):

#1 會輸出全部的日誌(commit id,commit author,commit date,commit name),若是日誌特別多的話,在git bash中,按向下鍵來查看更多,按q鍵退出查看日誌
git log

#2 --oneline 參數能夠將每條日誌的輸出爲一行(commit id 前7位,commit name),若是日誌比較多的話,用這個參數可以使結果看起來比較醒目
git log --oneline

#3 -[length] 參數用於指定顯示多少條日誌(例:git log -1,顯示一條)
git log -[length]

#4 --name-status 參數會帶出每次提交對應的文件改動
git log --name-status

#5 能夠篩選出 yourname 用戶提交的全部日誌
git log --author yourname

#6 參數用來指定跳過前幾條日誌(git log --skip=1)
git log --skip=[skip]

#7 -p 參數輸出的信息會更多,用來顯示提交的改動記錄,至關於屢次使用 git show [commit_id] 的結果;(git log -1 -p:顯示一條)
git log -p
複製代碼

Git 撤銷提交:

#1 退回到某個版本,只回退了commit的信息(退回到暫存區 commit,還能夠繼續修改提交)
git reset --soft <commit id>

#2撤銷最近一次提交
git revert HEAD

#3 reset 撤銷 完全回退到某個版本(撤銷的內容(即被撤銷的commit)會被沖掉)
git reset --hard<commit id>

#4 revert 撤銷 (好比:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)撤銷指定的版本,撤銷也會做爲一次提交進行保存
git revert commit

注意:reset 和 revert 的區別:revert 是用一次新的 commit 來回滾以前的 commit,reset 是直接刪除指定的 commit
複製代碼
相關文章
相關標籤/搜索