• Git命令汇总(补充篇)


    上一篇《Git命令汇总基础篇》总结了使用Git的基本命令,这一篇作为补充主要给大家讲一些平时使用中的技巧和总结 。

    学会了这些命令,已经基本解决了使用Git中大部分问题。

    1.gitignore 全局配置忽略文件

    git config --global core.excludesfile ~/.gitignore

    如果只针对某个项目起作用,也可以把.gitignore放在跟.project同一目录下。 

    2.git log 格式化显示

    git log --pretty=oneline

    git log --pretty="%h - %H - %an, %ar : %s"

    git log --pretty="%h - %s"

    git log -p 显示每次提交的内容差异

    git -log --stat 显示简要的增改行数统计

    3.git stash暂存

    git stash     

    git stash save -a 'msg'

    git stash pop

    git stash list

    git stash apply stash@{id}

    git stash drop stash@{id}

    4.git reset回滚

    --git reset --soft head^  回退最近一次commit的文件

    --git add 提交到暂存区 

    --git reset HEAD <file> 把暂存区里的文件撤销

    --git reset --hard HEAD^ 把最近一次提交的文件回滚并覆盖

    --git reset --hard <commit_id>

    --git push -f 

    5.git 只合并分支上某个commit(即sourceTree的遴选)

    1.git checkout -b'feature' 切换到新分支

    2.git reflog  找到需要遴选的<commit_id1> <commit_id2>

    3.git cherry-pick <commit_id1><commit_id2> 把1、2的提交合并到新分支

    4.提交并推送

    同样可以用sourceTree的遴选功能实现

    1.切换到需要遴选提交代码的分支

    2.选中某些提交,右键选择遴选

    3.推送分支

    6.git patch补丁 可以删除某一个commit

    1.git log –oneline 找到需要删除的<commit_id>,假如倒序是第7次提交

    2.git format-patch -7 生成7个patch,这些patch是按提交时间生成的

    3.git reset --hard <commit_id>   回退到第8次提交的<commit_id>

    4.--git push -f 强制推送到远程

    5.git am *.patch  移除0007-.patch,把其他应用提交

    6.推送分支

    7.git revert 回退某个commit提交

    git revert <commit_id>  

    区别于git reset,git revert是作为一个单独的commit提交

  • 相关阅读:
    使用Distinct()内置方法对List集合的去重 问题
    TCP连接与HTTP请求
    ASP.NET MVC 使用 Authorize 属性过滤器验证用户是否已登录
    C#进阶系列——WebApi 跨域问题解决方案:CORS
    关于设计模式的六大原则
    C# WebApi 接口传参详解
    数据库数据流量太大-问题诊断
    docker的build生成镜像和启动container
    docker生成dotnet core镜像
    NET Core 源码浏览站点工具
  • 原文地址:https://www.cnblogs.com/garryfu/p/7988444.html
Copyright © 2020-2023  润新知