zen·工作环境搭建之git篇 |
您所在的位置:网站首页 › Repair与fixup区别 › zen·工作环境搭建之git篇 |
这是git工具的最终篇,主要是Lazygit已经满足日常开发几乎所有要求了 足够轻量,不占用系统资源,特别是内存 足够便捷,包含日常操作而不需要打一堆命令 快捷键齐全,最好切个分支3s内完成git本身的命令行工具比较薄弱,交互太烂。而VSCode的git管理工具偶尔失灵,比如大文件diff的时候经常卡住,毕竟是个GUI软件,IDE要兼顾的东西太多了,大文件要先AST解析一遍再高亮代码解析肯定不如纯命令行响应速度快。 图形化的软件如SourceTree,腾讯内的UGit,其实都挺好用。网上能下到的也挺多的,比如fork。但是要长期开启一个软件其实还不是非常方便,所以会用终端图形化git管理工具会非常高效,且保证你在每个公司都能一套配置打天下 Lazygit(推荐)一个比tig更好用的git图形化工具 中文文档: gitcode.gitcode.host/docs-cn/laz… brew安装 brew install lazygit其他安装方式请自行查阅文档 ~/.bashrc设置别名,执行完source一下生效 alias lg="lazygit" 帮助x快捷键可以调出help面板 使用 区块切换 1-5/tab[](中括号键)可以在Branches面板里切换
如果要针对某一行做add,可以回车进入文件,选中某行后空格做add staged操作。同理a可以选中单文件全部修改,一起操作,跟VSCode里git面板操作一样一样的。
也可以tab切换面板,用d做unstaged操作
也可以v进入visual模式(vim操作),选中多行后空格add 如何放弃某行修改选中后d删除这一行的修改,回车确认即可,有提醒可以注意下 选中文件后按d,则可以放弃一个文件的全部修改 如何放弃全部修改files区块,按d即可 更加多的功能 D会有更多的功能
当然你可以直接清空本地修改,选第一个选项 nuke working tree,本地修改都会还原 如何unaddtab可以切换到Stage视图,然后空格或者d取消add操作,同理可以选中多行操作 git commitblock聚焦Files(第二块),直接输入c就可以了,会弹出输入框输入commit message提交 同理,git commit --amend可以通过A来实现 选中commit后t可以revert commit,即创建一个新的commit抵消原有的commit。 一般是提交公共分支后需要回退之类的 checkout branch选中分支后空格键检出,最简单的方式了 也可以选中分支后按F,就是git reset,配合soft/mixed/hard选项,省略敲命令的过程 也可以按c输入分支名检出 branch merge在源分支(from) -> 目标分支(target)操作过程中,可以通过选择待合并分支后,按 M 进行merge操作 移动到4 Commits视图,输入g就可以了 也可以到commit面板的的Reflog检出,比如reset后Commit面板没有的 按g可以检出 cherry-pickcherry-pick 基本概念 ruanyifeng git-cherry-pick 可以看下 到Commit区块后,空格就可以应用选择的commit了。注意这里cherry-pick时候本地不能有没有提交的内容 把某个commit应用到其他分支比如把上图test分支最新的commit合入master分支,可以这么操作 选择commit后c(copy commit)/C(copy commit range),都是cherry-pick的操作 按3回到Branch面板按空格切换分支到master 按4到Commits面板,按v粘贴通过如上三步可以把一个commit同步到不同分支 把某行修改做修改如上,Commit面板选择commit回车选择文件回车,选定范围后Control+p调出面板,可以把patch还原,也可以移动到工作区或者新的commit rebase interactive处理rebase信息后m可以选择continue或者skip等继续操作 Rebase选择分支后按r就可以rebase branch了,如下图等价于git rebase master。如果有冲突可以解决冲突后回车continue 同时,选中commit的时候control+j/k可以移动commit的上下位置 合并commit - fixup or Squash如何借助fixup与autosquash让Git分支保持整洁 fixup和squash区别:fixup是合并相邻两次commit,squash一般是合并一大片commit fixup
合并有冲突会有提示,根据提示进入解决冲突阶段 空格可以选择保留的部分,上下方向键切换 左右方向键可以在前后两次冲突间切换 b 代表both,保留两次冲突的修改 push/pull p: pull files P: push files比如像暂存一些东西方便去其他分支做bugfix之类的 通过commit面板找到需要回滚的部分,然后d回滚这次的修改 查看某个文件的修改历史 filtering追责或者想找出谁修改了某个文件的时候特别有用 在Commit面板选择文件后ctrl+s,会输出对这个文件所有修改的记录
在commits面板,W显示diff选项,选择后commitId变为粉红色 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |