Git – 小众软件 https://inloveinparis.com 分享免费、小巧、实用、有趣、绿色的软件 Sun, 14 Jul 2024 07:43:22 +0000 zh-Hans hourly 1 https://wordpress.org/?v=6.8.1 git-cliff – 高可定制的 Git 项目变更日志生成器:从代码提交中自动生成变更日志 http://inloveinparis.com/git-cliff/ http://inloveinparis.com/git-cliff/#respond Sun, 14 Jul 2024 07:43:14 +0000 http://inloveinparis.com/git-cliff/ git-cliff 是一个可以从 Git 历史记录中自动生成变更日志的小工具,并且能通过模板定义格式内容,最终导出 CHANGELOG.md 文件。@Appinn

git-cliff - 高可定制的 Git 项目变更日志生成器:从代码提交中自动生成变更日志

git-cliff 如何使用

git-cliff 能够整合在 git 之中,使用的时候只需要:

git cliff --output CHANGELOG.md

它会根据 git 提交记录,匹配如 fix|修复、doc|文档、style|样式、perf|性能 等描述语,然后自动生成 .md 文档。

默认文档匹配是这样的,按需修改即可。

  { message = "^feat", group = "<!-- 0 -->🚀 Features" },
  { message = "^fix", group = "<!-- 1 -->🐛 Bug Fixes" },
  { message = "^doc", group = "<!-- 3 -->📚 Documentation" },
  { message = "^perf", group = "<!-- 4 -->⚡ Performance" },
  { message = "^refactor", group = "<!-- 2 -->🚜 Refactor" },
  { message = "^style", group = "<!-- 5 -->🎨 Styling" },
  { message = "^test", group = "<!-- 6 -->🧪 Testing" },
  { message = "^chore\\(release\\): prepare for", skip = true },
  { message = "^chore\\(deps.*\\)", skip = true },
  { message = "^chore\\(pr\\)", skip = true },
  { message = "^chore\\(pull\\)", skip = true },
  { message = "^chore|^ci", group = "<!-- 7 -->⚙ Miscellaneous Tasks" },
  { body = ".*security", group = "<!-- 8 -->🛡 Security" },
  { message = "^revert", group = "<!-- 9 -->◀ Revert" },

可以为特定的部分 git 历史记录生成变成日志,比如:

git cliff --current
git cliff --unreleased --tag 1.0.0

也可以指定范围:

git cliff 4c7b043..a440c6e
git cliff 4c7b043..HEAD
git cliff HEAD~2..
git cliff v2.2.1..
git cliff v0.1.0..HEAD

更具体的用法参见例子

获取

有需求的同学可以试试。

具体的案例,可以 git-cliff 自己的 CHANGELOG.md 文件。


原文:http://inloveinparis.com/git-cliff/


相关阅读


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/git-cliff/feed/ 0
哦,我的 Git(Oh My Git!):一个学习 Git 的开源游戏 http://inloveinparis.com/oh-my-git/ http://inloveinparis.com/oh-my-git/#respond Tue, 16 Apr 2024 09:20:36 +0000 http://inloveinparis.com/oh-my-git/ Oh My Git! 是一个专门来学习 Git 的开源游戏,它向玩家介绍流行的版本控制系统 “Git”,通过高度交互,建立“merging”或“Rebase”分支等操作的直觉。玩家将逐步了解 Git 的功能,每个级别都讲述一个小故事,玩家可以利用他们新发现的能力来解决问题或帮助他人。@Appinn

哦,我的 Git(Oh My Git!):一个学习 Git 的开源游戏

哦,我的 Git(Oh My Git!)

它支持 Windows, macOS, Linux,可以实时可视化 Git 库的内部结构,使用卡牌来执行命令,并且集成了一个终端,可以执行任意 Git 命令。

另外还有使用 Git 进行团队协作,重点关注如何与远程交互,以及处理多个库时存在哪些工作流程。

小视频

具体玩起来,大概是这样的:

获取


原文:http://inloveinparis.com/oh-my-git/


相关阅读


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/oh-my-git/feed/ 0
像写代码一样写作 http://inloveinparis.com/write-like-code/ http://inloveinparis.com/write-like-code/#comments Wed, 25 Mar 2020 02:46:00 +0000 http://inloveinparis.com/write-like-code/ 本文来自讨论组,由 @Rackar 发布,非常有意思的一篇文章。由两部分组成:VS Code 和 Git。

像写代码一样写作 1
Photo by Aaron Burden on Unsplash

在这个帖子里提到便捷的文字编辑器,想找个记事本软件换掉notepad++(具体需求内详)我说准备写一篇介绍 VS Code 的文章。现在写完一部分,放上来听听大家的看法。

文章原文放在我的博客里。


前言

我不清楚文字工作者普遍使用什么工具来进行写作,猜测常规的可能以 Word 为主,纯文字的可能主要在 txt, notepadd++ 等小巧文字编辑器里,然后再使用别的工具排版和美化。

我介绍一下程序员写代码的工具,给大家借鉴一下。用这些工具主要解决以下问题:

  1. 忘记保存、以及猫咬点线,错按关机等,导致内容不慎丢失这种喜闻乐见的剧情。
  2. 多版本管理。最终版 .doc,不改了最终版,不改了最终版 V233。修改历史不好管理,对比不直观。
  3. 设备同步。公司写完想在家里修改需要同步工具或者拷过去拷回来。
  4. 多人协作。
  5. 强大的插件和扩展工具库。

为了提高(偷)效率(懒),程序员们在自用工具改善上的动力和创意是无穷的,毕竟偷懒是第一生产力。

而本身作为代码编写者,和文章作者是有很多类似需求的。所以即使有些用法显得有一点门槛,但还是希望大家勇敢尝试一下,会发现这些玩意的妙处。

我要介绍的最主要的工具就是 VS Code 和 Git。都是跨平台软件。写作推荐使用 Markdown 格式,专注于编写,同时又能做到轻量排版。如果不想本机安装软件也可以使用这个在线编辑器,或者简书来使用浏览器在线编写和保存 Markdown 文件。

10 秒 Markdown

Markdown 语法里面,先用最基础的这几个就能流畅的写作了:

#  一级标题

## 二级标题

[标题](链接地址)

![图片描述](图片链接地址)

*斜体*

**粗体**

也就是说,编写后缀名为 .md 的文本文件,在文字中间加一些约定的小标记,就能在各种网站和工具里看到排版后的效果。

比如现在这段源文件和他的预览:

像写代码一样写作 2
图1:Markdown 预览

剩下语法和标记的在使用的过程中再查就可以。比如序列、引用、代码块,以及待办列表、流程图、公式等更复杂的功能。

VS Code

全名 Visual Studio Code,是微软出品的跨平台轻量级代码编辑器。外观长这样:

像写代码一样写作 3

软件打开非常快,Windows, Mac, Linux 都可以使用,还有无数插件可直接搜索安装(安插件都不用重启你敢信),满足你各种奇 ♂♀ 的需求。

下载安装

Windows 版下载地址,其他版本从官网选择 Stable 版本下载

然后直接默认安装就好。

界面介绍

使用文件 → 打开文件夹定位到文章目录中。

像写代码一样写作 4

左侧主要的 4 个按钮就是资源管理器搜索版本控制插件。如图现在显示的资源管理器。可以看到编辑器中打开了哪些文件,当前目录文件树和所编辑文件大纲。

搜索就更厉害了,可以直接定位到哪个目录下哪个文件的第几行。

像写代码一样写作 5

版本控制我们放后面说。先看下插件。

安装插件

只要在左边栏点击 Extensions,输入要搜索的关键词,就可以浏览查看各种插件的介绍和视频图片。点击 Install 安装插件。

个人推荐的几个基础插件:

插件名功能用法
Chinese (Simplified) Language
Pack for VS Code
Vs Code 汉化安装加载即可汉化界面
Git History查看历史版本点击右上角或者右键查看
Prettier – Code formatter自动格式美化可设置保存时自动去除多余行,补上标点和空格等
Bookmarks书签可在关键内容处添加标签,便捷跳转
Markdown All in OneMD 工具箱快捷操作、表格、预览等各项功能

实际使用

首先在菜单 → 文件 → 自动保存打钩,不用担心没有保存这回事了,只要一直写写就 OK。

不过为了自动格式换行插件正常工作,我还是习惯写一行按一下 Ctrl+S 来手动保存。就算没自动保存突然关闭软件也不会丢失内容,但是最好不要太过依赖这种方式。

在编辑 .md 文件的时候,右上角有个按钮叫打开侧边栏预览(见下图),可以同步查看排版后的效果,如上图1

像写代码一样写作 6

Git

Git 是程序员们最爱的版本控制软件没有之一。只要你使用方法得当,这个东西可以把几乎你对文字(代码)的每一次修改变动都记录下来,随时都可能看到每次修改了什么内容,以及可以回退到任何时间的版本。

而且可以云端上传下载,比对不同版本的差异,进行自动或者手动合并。在编程中每一个字母和符号都是受控的,所以尽请放心绝对可以处理好你的文字。

下载安装

Git 官网可以下载到各种系统的版本。安装好后,重启 VS Code,在版本(源代码管理)里面就可以看到相应的菜单了。

基本使用

初始化存储库

像写代码一样写作 7

初始化存储库意味着将这个目录加到 Git 的管辖范围。会在目录下新建 .git 隐藏目录,不要去删除或手动编辑改目录中的内容。

检测更改

在本目录下创建和修改文本文件,编辑一些文字保存,在更改区里会自动检测到列出来,并高亮提示。点击这个文件,会展出他和之前版本的差异。

像写代码一样写作 8

可以看到左侧旧版有一行行首标记了一个 - 符号,右边新版几行行首都显示了一个 + 符号,表明为新增行。其中 119 行为部分文字修改,已经追踪到具体哪几个字变了并高亮显示。

当然文字级的跟踪仅限于文本文件,也就是你可以用记事本查看和编辑的。对于图片、音视频、Word 和 Excel 等文件,如果修改变动了只能记录整体文件的变化,也就和你手动复制备份了一个副本是一样。所以对于这类文件,如果还在不断的修改变化,不推荐使用 Git 管理。

本地提交

更改的文件本应手动放入暂存区,然后从暂存区提交到本地库。

我们这里简化一点,直接在输入框中输入本次提交的备注,然后 Ctrl+Enter 提交到本地库。

像写代码一样写作 9

这样的提交就相当于一次归档的版本记录。点击上方 Git:view History 按钮(插件功能),可以查看到各次提交的记录和时间、人员,每次记录都可以查看详情、变化,并与其他版本进行对比。

像写代码一样写作 10

云端同步

云端同步就要找个网站来注册一下了。全球通用的 Github 在国内的访问速度不稳定,好在我们有国内的替代(山寨)版本,还有个犀利的名字码云 Gitee。最简要的介绍下怎么用。

注册登录验证之后,点击右上角+号,新建仓库。

像写代码一样写作 11

然后输入仓库名称,会自动生成英文或者拼音的项目路径。

选择项目为公开还是私有。注意公开仓库则其他人可以查看项目中文章的所有编辑和删改记录。所以不打算公开的可以选择私有。其他默认不勾选。点击创建。

像写代码一样写作 12

会出现下面的提示,有一些教你如何连接远程的命令。

像写代码一样写作 13

这里要用到一点命令。命令在哪输入呢?按查看 → 终端或者快捷键 Ctrl + ` 开启下方的终端命令行,复制或输入命令即可:

像写代码一样写作 14

首先进行全局的用户设置,推荐设成和 gitee 注册的用户名和邮箱:

git config --global user.name "myName"

git config --global user.email "xxx@xx.com"

然后因为我们前面已经初始化过存储库了,所以按照已有仓库部分的命令操作就行。也就是下面两行:

git remote add origin https://gitee.com/rackar/my_story.git

git push -u origin master

第一行是添加远程库链接,只需执行一次。第二行是推送本地库到远程并设为默认,俗称上传。首次推送时会弹出用户密码框,输入刚才注册时的用户密码。

远程库地址 URL 记得换成自己的。

推送成功会如下提示:

像写代码一样写作 15

后续编辑又提交了本地库之后,可以使用命令 git push 直接推送。也可以点击源码管理器右上角的三个点按钮 ... ,选择推送。

像写代码一样写作 16

多设备同步

想在另一台设备上同步写作的话,也按照上面的方法安装好 VS Code 和 Git。然后用命令行终端运行命令:

git clone https://gitee.com/rackar/my_story

会将整个项目下载到运行目录下。

然后每次开机写作前,点击拉取从云端拉取最新版到本地。关机前使用推送将修改后的版本推送到云端。

多人同步

这个操作就要更复杂一些,简要介绍下就不展开了。

主要有两种方式,第一种类似多设备同步,但是有时会有同一版本被同时编辑一处的情况,Git 会自动提示冲突在第几行,需要手动选取保留哪一个版本。

第二种叫 Pull Requests。编辑的人需要 fork(类似拷贝)一份项目,然后修改完 PR 回主项目。主项目管理人需要审阅更改,同意合并才能更新进来。

结束语

VS Code 还有各种各样的神器插件来提供人性化的操作。

写作文本时就发现文章添加图片的操作有些繁琐。所以修改发布了一个开源插件。插件中搜索 markdown-image 就可以找到和安装。可以一键自动上传截图或者本地图片到七牛云图床,并将外链加入文章内,方便分享。

像写代码一样写作 17

所以近期还会写一篇介绍申请七牛云免费空间和应用本插件的文章。可以关注公众号 Rackar 来获取更新消息。

本文的主要内容就写到这了。有问题建议欢迎留言。希望能对大家有所帮助。


相关阅读


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/write-like-code/feed/ 21
没有 Windows 文件管理器集成 git 信息展示的工具?自己写一个 http://inloveinparis.com/gitinfoexplorerextension/ http://inloveinparis.com/gitinfoexplorerextension/#comments Thu, 05 Sep 2019 06:37:44 +0000 http://inloveinparis.com/gitinfoexplorerextension/ 一言不合就造轮子,大佬 @pedoc 询问「是否有和 Windows 文件管理器集成的 git 信息展示工具」,一直无法找到满意的工具,怎么办?自己写一个呗。

没有 Windows 文件管理器集成 git 信息展示的工具?自己写一个 18

具体问题是这样的:

就是希望可以在使用文件管理器进入某个文件夹时,如果这是一个 git 仓库,那么在标题或者哪里显示当前 git 仓库的一些信息,比如分支,提交信息之类。

GitInfoExplorerExtension

这款叫 GitInfoExplorerExtension 的文件管理器插件能够显示 git 仓库的分支信息以及最后一次提交信息:

没有 Windows 文件管理器集成 git 信息展示的工具?自己写一个 19

另外 @pedoc 还将插件开源,并提供了。

用法简单:

  1. 下载解压
  2. 打开 ServerManager.exe,点击 File->Load Server
  3. 选中加载后的 Server,点击 Server->Install Server(x64)

需要 .Net 4.6

对于这类一言不合就自己造轮子的骚操作,@Debatrix 评论道:

真·大佬操作orz


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/gitinfoexplorerextension/feed/ 10
GitNote – 基于 Git 的跨平台云笔记工具 http://inloveinparis.com/gitnote/ http://inloveinparis.com/gitnote/#comments Sun, 03 Feb 2019 06:39:31 +0000 http://inloveinparis.com/gitnote/ GitNote 是一款基于 Git 的云笔记工具,支持 Windows、macOS、Linux,使用 Git 仓库作为数据保存,如 GitHub、GitLab 等,内置 git 支持,依托 Git 仓库的特性,拥有历史版本、私密笔记、无限空间等特点。@Appinn

GitNote - 基于 Git 的跨平台云笔记工具 20

来自发现频道

自从工作之后,我开始进行笔记记录,这是一个很棒的习惯.我曾经使用过 EDiary Evernote Onenote Wiz 麦库等,都是一些不错的笔记软件,但是都有一些各式各样的问题,不能满足我的使用。
2013 年,我用 java 编写了第一款笔记软件 jnote,支持 markdown 和富文本编辑器,但是没有云同步功能。
2016 年,我用 electron 和 JavaScript 编写了一个 markdown 编辑器 ndpeditor,不是笔记软件。
2017 年,我用 electron 和 JavaScript 编写了基于 git 的 GitNote 笔记软件,这个采用一个 React开发的版本,这是一个没有发布的版本。
2018 年,我用 Vue重构了 GitNote,更强大的 GitNote。

GitNote 支持任意 git 仓库,这里有一些常见且免费的:

由于 Git 的支持,GitNote 「拥有 git 的全部特性,可以任意的恢复笔记版本记录,依托 github 的免费不限量私人仓库,你的笔记没有空间的限制,你的数据完全属于你自己。」

GitNote 还拥有插件功能,可以实现如图片托管、思维导图、流程图等功能,不过页面还有待持续本地化。

GitNote - 基于 Git 的跨平台云笔记工具 21

GitNote 还包括一些特性:

  • TODO
  • 富文本编辑器
  • MARKDOWN
  • 附件
  • 浏览器收藏插件
  • 思维脑图
  • 流程图
  • 演示文稿
  • 多图床

官网在这里,更多讨论及细节在这里

云笔记与 git 的结合非常有意思,利用大型 git 仓库,解决了云同步以及云储存两大问题,剩下的,就是如何让用户更简洁、优雅、高效的记录和检索笔记了。目前的 GitNote 还有非常多的潜力。


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/gitnote/feed/ 34
Gource – 可视化 Git、SVN 的提交历史,生成酷炫的动画效果 [Windows] http://inloveinparis.com/gource/ http://inloveinparis.com/gource/#comments Thu, 07 Jun 2018 02:09:31 +0000 http://inloveinparis.com/gource/ Gource 是一款非常有趣工具,它能够为 Git、SVN 的提交历史生成炫酷的动画效果,能够显示出参与作者、分支、合并等等。@Appinn

Gource - 可视化 Git、SVN 的提交历史,生成酷炫的动画效果 [Windows] 23

感谢 @ruanyf 的推荐:

Gource 是一个很好玩的可视化工具,可以将代码仓库的历史变成视频,支持 Git 和 SVN 等多种格式。

Gource 能显示的信息很丰富,来看官方介绍视频吧

用法也简单,先准备 git 项目路径,比如 c:\git\abc\

在安装来 Git 的 Windows 电脑上,打开 cmd,进入 gource 目录,然后运行:

gource.exe  c:\git\abc\

然后就能看到视频了,如果想保存为视频文件,则使用参数 -o 即可。

另外,最新的 Gource 0.48 提供了源码,青小蛙在 Ubuntu 上编译缺了好多依赖装不过来,最终放弃了…

感兴趣的同学可以前往 Gource 官方了解。


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/gource/feed/ 5
Krypton – 从手机上,为你的 SSH、Git 服务开启二次验证 [Android/iOS] http://inloveinparis.com/krypton/ http://inloveinparis.com/krypton/#comments Wed, 31 Jan 2018 03:55:42 +0000 http://inloveinparis.com/krypton/ Krypton 是一款适合于开发者或者运维使用的工具,它能够为 SSH、Git 提供二次验证,让你在登录、Pull 代码的时候更安全,使用 PGP 加密。@Appinn

Krypton - 从手机上,为你的 SSH、Git 服务开启二次验证 [Android/iOS] 26

服务器被黑这种事情,广泛发生在互联网上。

青小蛙很久前就使用过 SSH 的二次验证,只需要在 Linux 服务器上安装个 Google Authenticator,就能实现登录的时候手机验证一下,然而对比起 Krypton,体验并没有这么顺滑。

来看 Krypton 是怎么顺滑的:

可以看到,在使用 ssh 登录服务器或者 git pull 的时候,手机会弹出授权消息。

你可以选择授权 1 次,或者授权 1 个小时。如果不授权,让无法登录或者使用 git pull。

Krypton 说想做 id_rsa 终结者,不过青小蛙觉得对于熟悉的设备,应该有一个永久授权或者比 1 个小时长很多的授权时间更合理一些。

Krypton - 从手机上,为你的 SSH、Git 服务开启二次验证 [Android/iOS] 27

不过不管怎么样,增加安全性都是没有错误的。

👉 Krypton 官网


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/krypton/feed/ 6
Source – 手机上的「git 全功能客户端」和代码编辑器 [iPhone / iPad] http://inloveinparis.com/source-git-client-code-editor/ http://inloveinparis.com/source-git-client-code-editor/#comments Wed, 12 Apr 2017 05:57:38 +0000 http://inloveinparis.com/source-git-client-code-editor/ Source 是一款 iPhone、iPad 上的 git 全功能客户端和代码编辑器,自带「代码键盘」,可以连接 GitHub、Bitbucket、GitLab,让你在手机上也能继续当码农。@Appinn

Source - 手机上的「git 全功能客户端」和代码编辑器 [iPhone / iPad] 33

无论开发者还是用户,都有意愿让越来越多的工作和娱乐在手机上操作,感觉这是一个不可阻挡的趋势。

Source 支持超过 100 种编程语言的语法高亮,能够实现全功能的 git 操作,包括 Commit, Pull, Push, Diff, use branches, multiple remotes 等等。

Source - 手机上的「git 全功能客户端」和代码编辑器 [iPhone / iPad] 34

内置集成了三大代码仓库 GitHub,Bitbucket,Gitlab,并且能够生成 SSH Key 实现密钥登录。

Source - 手机上的「git 全功能客户端」和代码编辑器 [iPhone / iPad] 35

然而似乎不支持自建的代码仓库…要么就放到本地,与 Source 同在。

虽然有代码键盘,但青小蛙还是建议 iPad + 外置键盘 的组合比较合适…

Source - 手机上的「git 全功能客户端」和代码编辑器 [iPhone / iPad] 36

青小蛙有位好友,嫌弃笔记本电脑太重,于是每天背着 iPad 和键盘,进行各种操作,常常看他工作到半夜,好心疼…

Source - 手机上的「git 全功能客户端」和代码编辑器 [iPhone / iPad] 37


相关阅读


©2021 青小蛙 for 小众软件 | 加入我们 | 投稿 | 订阅指南
3659b075e72a5b7b1b87ea74aa7932ff
点击这里留言、和原作者一起评论

[ 点击前往获取链接 ]


]]>
http://inloveinparis.com/source-git-client-code-editor/feed/ 4