GIT高级使用技巧

这篇具有很好参考价值的文章主要介绍了GIT高级使用技巧。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

GIT高级使用技巧

导出GIT日志到文件

按照 <哈希> - <作者名> <作者邮箱地址> - <作者日期> : <commit描述> 的格式导出日志

git log --pretty=format:"%H - %an <%ae> - %ad : %s" master > log.txt

筛选日志并按照从旧到新的顺序排序,且只要提交哈希值(用于批量cherry-pick等操作)

cat log.txt | grep <匹配关键字> | awk '{print $1}' | tac

批量git cherry-pick

要批量应用 git cherry-pick 命令,可以使用 xargs配合 git cherry-pick 使用。具体步骤如下:

  1. 将要应用的提交 ID 复制到一个文本文件中,每行一个提交 ID。
  2. 执行以下命令:
cat file.txt | xargs git cherry-pick <options>

options 可以是 -m 1 ,意思是遇到merge commit的时候,因为merge commit会有多个parent,需要选择以哪个parent为主。-m 1 是指以第一个parent为主。如果不指定该选项,遇到merge commit会报错中断。

当使用 git cherry-pick 命令批量应用提交时,可能会发生冲突。如果发生冲突,Git 会停止应用提交,并提示您解决冲突。在解决冲突后,您需要继续应用剩余的提交。可以使用 git cherry-pick --continue 命令来继续应用提交,或者使用 git cherry-pick --abort 命令取消应用提交。

查看删除文件的历史记录

用以下命令去查看改名或者删除某个文件的commit。

git log --follow --diff-filter=RD --full-history <分支名> -- <文件路径>

git log会从分支的HEAD节点往上回溯,找到所有符合条件的commit。

强行更新submodules

submodules的内容有时候会丢失,但是却无法补全,执行git submodule update --init --recursive也无效。这时候需要强制更新 -f

git submodule update --init --recursive -f

查看某个文件从某个点开始回溯的历史变动路径

用以下命令打开gitk图形用户界面。文章来源地址https://www.toymoban.com/news/detail-705966.html

gitk <分支/tag/commit> <文件路径>

到了这里,关于GIT高级使用技巧的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 1.Git使用技巧-常用命令2

    提示:这里可以添加本文要记录的大概内容: 本地仓库整理分为整理上一次提交和整理多次提交 1.整理上一次提交: 把当前暂存区里的内容合并到上一次commit里,而且还可以修改上一次提交的message信息。 上面命令执行后,跳出一个VIM编辑框(如左下图),此时我们可以修改

    2024年02月13日
    浏览(76)
  • 1.Git使用技巧-常用命令1

    创建远端仓库: git init – bare // 创建远端裸仓库; 远端仓库别名: origin 本地仓库: git clone … 创建远程仓库 1.创建git账号和git用户组 2.创建git仓库 3.禁止git用户登录shell,这样git通过sh服务登录会被拒绝(可选) 4. 创建本地仓库 比如在我的windows电脑创建本地仓库文件夹 然后

    2024年02月13日
    浏览(42)
  • 【Git使用小技巧】一个项目使用多个远程仓库

    目录 场景一:多远程仓库的基本操作 添加远程仓库 查看远程仓库 推送到全部远程仓库 同步指定目标仓库 更改远程仓库地址 删除远程仓库 场景二:所有仓库同步拉取/推送 场景三:一个仓库只拉取,一个仓库只推送 参考资料: 前言 当我们实际开发中,可能会遇到一个项目

    2024年01月19日
    浏览(66)
  • Git常用命令,配合GitHub的使用技巧

    1、git init:初始化仓库 2、git status:查看仓库的状态 工作树和仓库在被操作过程中,状态会不断发生变化。在Git操作过程中常用git status 来查看当前状态,是基本的操作。 3、git add:向暂存区中添加文件 如果只是利用Git仓库创建了文件,那么文件并不会被记入Git 仓库的版本

    2024年01月23日
    浏览(41)
  • 【小技巧】MATLAB中的使用Git的工作流程

    目录 1.Git简介     2.Git操作步骤         MATLAB中的Git是一种版本控制工具,它使你能够跟踪和管理项目代码的变化。Git的核心思想是在开发过程中记录代码的不同版本,以便可以随时回溯到以前的版本或合并多个开发人员的更改。下面是MATLAB中的Git的一些关键概念和操作:

    2024年02月06日
    浏览(38)
  • 便捷开发技巧——在Vscode中使用Git-翻译自Vscode官网

    介绍 Want to easily manage your source code and collaborate with others? Git and GitHub are the tools you need! And with Visual Studio Code, you can set up and use them in a snap. Even if you’re a beginner, VS Code’s user-friendly interface guides you through common Git actions like pushing and pulling code, creating and merging branches, and committin

    2024年01月17日
    浏览(42)
  • 搞科研、写论文,如何正确使用GPT?AIGC技术解析、提示词工程高级技巧、AI绘图、ChatGPT/GPT4应用

    目录 专题一 OpenAI开发者大会最新技术发展及最新功能应用 专题二 AIGC技术解析 专题三 提示词工程高级技巧 专题四 ChatGPT/GPT4的实用案例 专题五 让ChatGPT/GPT4成为你的论文助手 专题六 让ChatGPT/GPT4成为你的编程助手 专题七 让ChatGPT/GPT4进行数据处理 专题八 ChatGPT/GPT4在地球科学

    2024年02月04日
    浏览(60)
  • 深入讲解VsCode各场景高级调试与使用技巧

    VsCode自从诞生以来,以其各自优异的特性迅速走红。尤其是对于前端开发小伙伴来说,几乎成为必不可少的开发工具。所以,熟练掌握VsCode的各自使用技巧与调试技巧会让你的日常开发工作效率倍增。本文将会以大量图文的方式,从下面几个方面详细介绍VsCode的各种技巧:

    2024年02月06日
    浏览(42)
  • 【高级RAG技巧】使用二阶段检索器平衡检索的效率和精度

    之前的文章已经介绍过向量数据库在RAG(Retrieval Augmented Generative)中的应用,本文将会讨论另一个重要的工具-Embedding模型。 一般来说,构建生产环境下的RAG系统是直接使用Embedding模型对用户输入的Query进行向量化表示,并且从已经构建好的向量数据库中检索出相关的段落用户

    2024年04月26日
    浏览(33)
  • C++回调函数精解:基础使用和高级技巧一网打尽

      概述: C++回调函数提供了灵活的编程方式。基础使用演示了如何定义和调用简单的回调,而高级使用则展示了返回值非 `void` 的回调和Lambda表达式的灵活性。这种机制使程序更模块化、可维护。 在C++中,回调函数可以用于实现基础和高级的功能。以下是一个包含基础和高级

    2024年03月18日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包