Git 备忘录
整理了一下工作中常用的 Git 操作,持續更新中... merge單個文件 例如 B分支想要合并A分支的某個文件 首先,我們切換到B分支? git checkout branch B 之后,我們checkout A 分支的a文件,git checkout --patch? A? a路徑? 最后,彈出修改確認提示: Apply this hunk to index and worktree [y,n,q,a,d,/,K,g,e,?]? 在彈出的都選? y 即可。 如果不想應用更改的,在彈出的都選?n 即可。 最后提交代碼完成更新合并同步。 撤銷上一次操作 git reset --hard HEAD^ HEAD^的意思是上一個版本,也可以寫成HEAD~1 如果你進行了2次commit,想都撤回,可以使用HEAD~2 參數: --mixed? 不刪除工作空間改動代碼,撤銷commit,并且撤銷git add . 操作 這個為默認參數,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一樣的。 --soft ? 不刪除工作空間改動代碼,撤銷commit,不撤銷git add .? --hard 刪除工作空間改動代碼,撤銷commit,撤銷git add .? 注意完成這個操作后,就恢復到了上一次的commit狀態。 撤銷 commit 操作,但保留代碼 git reset --soft HEAD^ 僅僅是撤回commit操作,代碼仍然保留 查看文件修改 git log --name-status 每次修改的文件列表, 顯示狀態 git log --name-only 每次修改的文件列表 git log --stat 每次修改的文件列表, 及文件修改的統計 git whatchanged 每次修改的文件列表 git whatchanged --stat 每次修改的文件列表, 及文件修改的統計 git show 顯示最后一次的文件改變的具體內容 git show -5 顯示最后 5 次的文件改變的具體內容 git show commitid 顯示某個 commitid 改變的具體內容 給本地和遠程倉庫重命名 1.重命名本地分支 git branch -m new-name #如果當前在要重命名的分支 git branch -m old-name new-name #如果當前不在要重命名的分支 2.刪除遠程舊名稱分支并且push新名稱分支 git push origin :old-name new-name 3.關聯新名稱的本地分支和遠程分支 git push origin -u new-name 修改遠程倉庫地址 git remote set-url origin [url] 本地分支關聯遠程倉庫上游分支 git branch --set-upstream-to=origin/remote_branch? your_branch 分支重命名 1. 本地分支重命名(還沒有推送到遠程) git branch -m oldName newName 2. 遠程分支重命名(已經推送遠程-假設本地分支和遠程對應分支名稱相同) a. 重命名遠程分支對應的本地分支 git branch -m oldName newName b. 刪除遠程分支 git push --delete origin oldName c. 上傳新命名的本地分支 git push origin newName d. 把修改后的本地分支與遠程分支關聯 git branch --set-upstream-to origin/newName commit 規范 feat:新功能(feature) fix:修補bug docs:文檔(documentation) style: 格式(不影響代碼運行的變動) refactor:重構(即不是新增功能,也不是修改bug的代碼變動) test:增加測試 chore:構建過程或輔助工具的變動 合并commit 合并commit的簡便方法,就是先撤銷過去5個commit,然后再建一個新的。 $ git reset HEAD~5 $ git add . $ git commit -am "Here's the bug fix that closes #28" $ git push --force git tag git tag <name>就可以打一個新標簽: 用命令git tag查看所有標簽: 默認標簽是打在最新提交的commit上的 也可以找到歷史提交的commit id,然后打上 還可以創建帶有說明的標簽,用-a指定標簽名,-m指定說明文字: git tag -a v0.1 -m "version 0.1 released" 1094adb 用命令git show <tagname>可以看到說明文字: 修改 commit 注釋內容 順便說一下,如果commit注釋寫錯了,只是想改一下注釋,只需要: git commit --amend 此時會進入默認vim編輯器,修改注釋完畢后保存就好了 Git基本常用命令
推薦閱讀 Git的奇技淫巧 gitlab VS github Git 工作流程 Git 使用規范流程 常用 Git 命令清單 Git分支管理策略 commit填寫規范
| mkdir XX | 創建一個空目錄 XX指目錄名 |
| pwd | 顯示當前目錄的路徑 |
| git init | 把當前的目錄變成可以管理的git倉庫,生成隱藏.git文件 |
| git diff? XX | 查看XX文件修改了哪些內容 |
| git reset | –hard HEAD^ 或者 git reset? –hard HEAD~ 回退到上一個版本 (如果想回退到100個版本,使用git reset –hard HEAD~100 ) |
| cat XX | 查看XX文件內容 |
| git reflog | 查看歷史記錄的版本號id |
| git checkout — XX? | 把XX文件在工作區的修改全部撤銷 |
| git remote add origin https://aaa | 關聯一個遠程庫 |
| git push –u origin master | 第一次要用-u 以后不需要,把當前master分支推送到遠程庫 |
| git branch –d dev | 刪除dev分支 |
| git branch -D dev | 刪除未合并過的dev分支 |
| git stash | 把當前的工作隱藏起來 等以后恢復現場后繼續工作 |
| git stash list | 查看所有被隱藏的文件列表 |
| git stash apply | 恢復被隱藏的文件,但是內容不刪除 |
| git stash drop | 刪除文件 |
| git stash pop | 恢復文件的同時 也刪除文件 |
| git push origin master | 把master分支推送到遠程庫對應的遠程分支上 |
轉載于:https://www.cnblogs.com/dora-zc/p/11109125.html
總結
- 上一篇: 网名女繁体字72个
- 下一篇: Linux安装部署FTP服务器