查看分支
- 查看本地分支
git branch
- 查看远程分支
git branch -b
- 查看分支跟踪情况
git branch -vv
- 删除本地分支
git branch -d xxxx
切换分支
- 切换分支
git checkout xxx
- 切换并新建分支
git checkout -b xxx
删除修改
- 丢弃本地所有修改
git checkout .
- 清除没有add的文件
git clean
其中:-
-n
显示将要删除的 文件 和 目录 -
-f
删除文件 -
-df
删除 文件 和 目录
-
推送
- 在重置到某次提交,然后推送到远程分支时,使用上述命令
git push -f origin xxx
查看提交和修改
- 查看提交记录
git log
- 根据提交id,查看某次提交中修改的文件
git show --raw id
或
git show --stat id
- 根据提交id,查看某次提交中详细的代码改动
git show id
- 根据提交id,查看某次提交中某个文件的详细改动
git show id path
- 查看未提交的具体修改
git diff
- 对于已经commit,但是没有push的代码,查看具体修改
git show xxxxxx(commit id)
远程分支管理
- 查看远程分支的地址
git remote -v
- 本地仓库和远程仓库建立联系
git remote add origin git@xxxxx.git
- 本地仓库切断与远程仓库的联系
git remote rm origin
- 设置远程分支(如果设置不了,则执行git fetch --all)
git branch --set-upstream-to=origin/main
- 撤销本地分支与远程分支的映射关系
git branch --unset-upstream
- 强制和远程分支保持一致
git fetch --all
拉取最新的远程仓库信息,但不合并
git reset --hard origin/main
强制和远程分支保持一致
patch
- 合并patch包:
git apply xxxx.patch
- 打patch包:
git format-patch HEAD^
生成最近的1次commit的patch
git format-patch HEAD^^
生成最近的2次commit的patch
git format-patch HEAD^^^
生成最近的3次commit的patch
git format-patch HEAD^^^^
生成最近的4次commit的patch
git format-patch <r1>..<r2>
生成两个commit间的修改的patch(生成的patch不包含r1,其中 <r1>和<r2>都是具体的commit号)
git format-patch -1 <r1>
生成单个commit的patch
git format-patch <r1>
生成某commit以来的修改patch(不包含该commit)
git format-patch --root <r1>
生成从根到r1提交的所有patch
stash
- 把当前工作目录给压栈,当前工作环境和上一次提交保持一致(当前工作环境会变)
git stash
- 保存的临时工作环境恢复,当前工作环境改变
git stash pop
- 清空stash
git stash clear
- 查看stash list
git stash list
- 查看单个stash修改
git stash show xxx
- 查看单个stash修改的具体代码
git stash show xx -p
出错信息:
1.Please enter a commit message to explain why this merge is necessary..
输入“:wq”,注意是英文输入状态下的冒号,然后按下“Enter”键即可
任务:
1.查看本地知道的所有分支信息(包括有远端)
git branch -a