git分支与合并(3)

git branch                                  # 查看当前分支并且看到在哪个分支下工作
git branch -v                               # 查看本地git分支
git branch -av                              # 查看所有分支及其详细信息,如果添加远程仓库,会显示远程仓库上的分支
git branch dev                              # 创建一个dev分支
git checkout -b dev                         # 创建dev分支并切换到dev分支上工作
git checkout -b temp 5ccb4b3                # 基于5ccb4b3这个版本创建一个temp的分支
git checkout -b branch2 branch1             # 基于branch1分支创建并切换到branch2分支
git checkout dev                            # 切换到dev分支
git checkout master                         # 切换回master分支
git branch -d dev                           # 删除dev分支,删除分支时,分支相关的信息也会被删除
git branch -D branch_name                   # 删除指定分支,删除分支时,分支相关的信息也会被删除
git checkout --*                            # 把文件返回到修改之前的状态
git merge dev                               # 把dev分支合并到当前分支
git merge --no-ff -m "commit_message" dev   # 不使用fast forward模式合并dev分支到当前分支

版本倒退:

git reset --hard HEAD^          回退到上一个版本
git reset --hard HEAD^^         回退到上两个版本
git reset --hard 123456         回退到版本号为123456的版本
git reset --hard commit_id^     回退到指定commit_id的版本

差异比较

git diff                                    # 比较工作区和暂存区所有文件的差异
git diff 3c6fab966158f9 72ec71f3c2aa        # 比较两次提交的差异
git diff HEAD HEAD~1                        # git上一次提交与上上一次提交的差异
git diff HEAD HEAD^1^1                      # git上一次提交与前两次提交的差异
git diff HEAD HEAD~2                        # git上一次提交与前两次提交的差异
git diff HEAD HEAD^1                        # git上一次提交与上上一次提交的差异
git diff HEAD HEAD^1 -- index.html          # git上一次提交与上上一次提交中index.html文件的不同
git diff -- index.html                      # 比较工作区和暂存区中的index.html文件的差异
git diff --cached                           # 修改文件后,把修改的文件添加到暂存区中,查看暂存区和HEAD文件的差异
git diff master dev                         # 比较master分支和dev分支的差异
git diff master dev -- index.html           # 比较index.html文件在master分支和dev分支的差异

猜你喜欢

转载自www.cnblogs.com/topass123/p/12951218.html