回退
文件或文件夾
git checkout <hash> <filename or foldername>
倉庫軟回滾
軟回滾: 文件內容回退,但整體commit記錄繼續新增)
# history-commit-id 要回滾到的commit-id
# current-commit-id 最新的commit-id
git reset --hard 回滾到的id
git reset 當前id
git add .
git commit -m "xxxxx"
git push
在指定文件夾下設置提交用戶名和郵箱
# 查看Git配置
git config --list
git config user.name xxxx
git config user.email xxxx@163.com
# 是否設置成功
git config --list
文件的更改關聯的commitid
commitid 關聯的文件修改
獲取遠程代碼的更新
git fetch
git pull
git fetch vs git pull
branch操作
命令 | 描述 | zsh |
---|---|---|
git checkout <branch> <finder/file> |
從其他分支copy文件/文件夾 | |
git branch -m <oldname> <newname> |
修改:本地分支名稱 | |
git branch --set-upstream-to=<origin/test> <test> |
指定分支的upstream | |
git remote rename <oldname> <newname> |
修改:遠程分支名稱 | |
git checkout -b <branchname> |
以當前分支為副本, 創建并切換到新分支 | |
git branch -D <branch-name> |
刪除:本地分支 | gb -D <branch-name> |
git push origin --delete branch |
刪除:遠程分支 | |
git checkout -b <branch> <origin/branch> |
以遠程分支 為副本,在本地新建分支(不以本地分支目錄為副本) |
gcb <branch> <origin/branch> |
復制其他分支的文件夾或文件
git checkout [分支名稱] -- 路徑
git checkout origin/test -- aa/bb/aa.js
單獨拉取一個commit記錄
git cherry-pick -x [commit的id]
zsh 配置
vim ~/.zshrc
source ~/.zshrc
常用plugins:
plugins=( git git-flow git-flow-completion )
查看git配置
git config --list 或
cat .git/config 或
gcf
fork后與原倉庫同步
新增remote(遠程上游倉庫)
git remote add upstream <remote-url>
git fetch upstream
git log
glol(每條記錄信息最詳細)和glg(展示多條記錄)配合使用
glog | git log --oneline --decorate --color --graph
glg | git log --stat --color
信息比較詳細,每次展示的少,顯示完整的commitID,提交人(郵箱),修改的文件,修改的文件數量等,算是最詳細的了`
glol | git log --graph --pretty = format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
/顯示分支名稱,commit文字,commitID,時間,提交人/`