You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: rev_news/drafts/edition-121.md
+140
Original file line number
Diff line number
Diff line change
@@ -206,15 +206,155 @@ This edition covers what happened during the months of February and March 2025.
206
206
207
207
__Various__
208
208
209
+
+[What's new in Git 2.49.0?](https://about.gitlab.com/blog/2025/03/14/whats-new-in-git-2-49-0/)
210
+
by Toon Claes on GitLab Blog. This blog post mentions, among others,
211
+
improved performance thanks to zlib-ng, a new name-hashing algorithm, and git-backfill.
212
+
+[Highlights from Git 2.49](https://github.blog/open-source/git/highlights-from-git-2-49/)
213
+
by Taylor Blau on GitHub Blog. This posts mentions, among others, faster packing with name-hash v2,
214
+
backfilling historical blobs in partial clones, building Git with zlib-ng,
215
+
and libgit-sys and libgit Rust crates.
216
+
209
217
210
218
__Light reading__
211
219
220
+
+[Going down the rabbit hole of Git's new bundle-uri](https://blog.gitbutler.com/going-down-the-rabbit-hole-of-gits-new-bundle-uri/)
221
+
by Scott Chacon on GitButler blog.<br>
222
+
The [`bundle-uri`](https://git-scm.com/docs/bundle-uri) was mentioned in passing in [Git Rev News Edition #95](https://git.github.io/rev_news/2023/01/31/edition-95/)
223
+
(in _"Developer Spotlight"_), and in [Edition #104](https://git.github.io/rev_news/2023/10/31/edition-104/)
224
+
(in _"Git tools and sites"_, when mentioning [git-bundle-server](https://github.com/git-ecosystem/git-bundle-server)).
225
+
+[No Longer My Favorite Git Commit](https://mtlynch.io/no-longer-my-favorite-git-commit/)
226
+
by Michael Lynch on his blog, talks about how one could _improve_ the commit message
227
+
described in David Thompson's [“My favourite Git commit”](https://dhwthompson.com/2019/my-favourite-git-commit) - which
228
+
was mentioned in [Git Rev News Edition #57](https://git.github.io/rev_news/2019/11/20/edition-57/)
229
+
and [#108](https://git.github.io/rev_news/2024/02/29/edition-108/).
230
+
+ The article mentions [How to Write Useful Commit Messages](https://refactoringenglish.com/chapters/commit-messages/)
231
+
guide by Michael Lynch, one of available sample chapters in
232
+
_"Refactoring English: Effective Writing for Software Developers"_ book (in writing).
233
+
+ Another post by Michael Lunch, [How to Make Your Code Reviewer Fall in Love with You](https://mtlynch.io/code-review-love/),
234
+
was mentioned in [Git Rev News Edition #70](https://git.github.io/rev_news/2020/12/26/edition-70/).
The tools considered include gitweb, cgit, and Forgejo;
263
+
the last option (Forgejo) was ultimately selected.
264
+
+[Migrating git.adyxax.org from gitolite and cgit to Forgejo](https://www.adyxax.org/blog/2025/03/25/migrating-git.adyxax.org-from-gitolite-and-cgit-to-forgejo/):
265
+
How I am deploying [Forgejo](https://forgejo.org/) with [Ansible](https://www.ansible.com/).
266
+
By Julien (Adyxax) Dessaux on his blog.
267
+
+[Learn Git through Gamification – A Visual Guide to Key Version Control Concepts](https://www.freecodecamp.org/news/learn-git-through-gamification)
268
+
by Jacob Stopak on freeCodeCamp.
269
+
+[4 reasons you need to run a Git server on your NAS (even if you're not a developer)](https://www.xda-developers.com/reasons-run-git-server-nas/)
270
+
by Adam Conway on XDA Developers.
271
+
+[Manage DNS Records with GitHub Actions and DNSControl](https://runtimeterror.dev/manage-dns-records-github-actions-dnscontrol)
272
+
by John Wq on [runtimeerror] blog.
273
+
+[WSL SSH agent and Git](https://www.patriktrefil.com/posts/wsl_ssh_agent_and_git/)
274
+
by Patrik Trefil (2024) on his blog.
275
+
This article describes how you can say avoid the hassle of copying and pasting your SSH passphrase
276
+
every time you want to connect to a machine via ssh.
277
+
+[Accessing git Servers Over Another Port When 22 is Blocked and Cloning Hangs Waiting for Connection](https://jdsalaro.com/howto/fix-git-hang-connection-blocked-port-22-github-gitlab-bitbucket/)
278
+
by Jayson Salazar Rodriguez (2024) on his site.
279
+
+[Automatic Versioning with Xcode and Git](https://blog.reiterate.app/software/2024/07/09/automatic-versioning-with-xcode-and-git/)
mentions `jenkins-plugin-cli` from [Plugin Installation Manager Tool for Jenkins](https://github.com/jenkinsci/plugin-installation-manager-tool).
284
+
+ Compare [How to use the Jenkins Git Plugin: Tips and tricks](https://www.theserverside.com/video/Tips-and-tricks-on-how-to-use-Jenkins-Git-Plugin)
285
+
by Cameron McKenzie from [Git Rev News Edition #44](https://git.github.io/rev_news/2018/10/24/edition-44/),
286
+
about [Git | Jenkins Plugin](https://plugins.jenkins.io/git/).
287
+
+[Using Git Delta with Magit](https://scripter.co/using-git-delta-with-magit/)
288
+
by Kaushal Modi (2022) on A Scripter's Notes.
289
+
+[Delta](https://github.com/dandavison/delta) is a highly configurable command line utility
290
+
that makes the git diffs look better, while also syntax-highlighting the code in the diffs.
291
+
First mentioned in [Git Rev News Edition #86](https://git.github.io/rev_news/2022/04/30/edition-86/).
292
+
+[Magit](https://magit.vc/) is a popular Emacs interface to Git,
293
+
first mentioned (in passing) in [Git Rev News Edition #6](https://git.github.io/rev_news/2015/08/05/edition-6/).
294
+
+[How to Proxy Git Connections: using socat to ...Git... through a corporate firewall](https://bryanbrattlof.com/how-to-proxy-git-connections/)
295
+
by Bryan Brattlof (2022) on his blog.
296
+
+[Git aliases supporting main and master: How to make your aliases agnostic to the default branch](https://phili.pe/posts/git-aliases-supporting-main-and-master/)
297
+
by Philipe Fatio (2022) on his blog.
298
+
+[Keeping ‘live‘ dotfiles in a Git repo](https://probablerobot.net/2021/05/keeping-'live'-dotfiles-in-a-git-repo/)
299
+
by creating (git-dir) directory named `.dotfiles/` rather than `.git/` via `--git-dir` Git wrapper option.
300
+
From <https://probablerobot.net/> (2021).
301
+
+[On mainline merges and fast forwards](https://vcscompare.blogspot.com/2008/06/on-mainline-merges-and-fast-forwards.html)
302
+
by aoeuo (2008) on Blogger-based DVCS Comparison blog.
303
+
Compares Bazaar with Git and Mercurial.
304
+
305
+
+[GPLv2 is not impressed by git](https://www.thomas-huehn.com/gplv2-is-not-impressed-by-git/)
306
+
by Thomas Huehn on his Bear-powered blog, short musing about the following phrase from the license:
307
+
> You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
308
+
+[I found commit 0](https://programming.dev/post/27187038)
309
+
(or rather commit which SHA-1 identifier begins with 0000000),
310
+
by Kissaki on programming\.dev Lemmy instance.<br>
311
+
[Lemmy](https://join-lemmy.org/docs/index.html) is self-hosted, federated social link aggregation and discussion forum,
312
+
somewhat similar to Reddit.
313
+
314
+
212
315
<!---
213
316
__Easy watching__
214
317
-->
215
318
216
319
__Git tools and sites__
217
320
321
+
+[git-who](https://github.com/sinclairtarget/git-who) is a command-line tool for finding
322
+
the people responsible for entire components or subsystems in a codebase.
323
+
You can think of `git-who` sort of like `git blame` but for file trees rather than individual files.
where storing data is based on database-shaped `git` (core) architecture and Lucene for indexing.
328
+
Written in Clojure, uses MIT license.
329
+
+[Calendar.txt](https://terokarvinen.com/2021/calendar-txt/) is a solution
330
+
to keep your calendar in a plain text file.
331
+
One of it's advantages is that it is versionable: because it's plain text, you can keep it in git.
332
+
You can also easily take diff of calendar files, as it's one day one line.
333
+
+ See also [Todo.txt](http://todotxt.org/) to keep your TODO list in a plain text file,
334
+
and tools like [Taskwarrior](https://taskwarrior.org/), and
335
+
[Plain Text Accounting (PTA)](https://plaintextaccounting.org/).
336
+
+[YSK there are open-source (gamified) tutorials to learn git](https://programming.dev/post/26285997)
337
+
post provides list of some tutorials and interactive learning tools, like
338
+
+[Oh My Git!](https://ohmygit.org/), an open source game about learning Git,
339
+
first mentioned in [Git Rev News Edition #72](https://git.github.io/rev_news/2021/02/27/edition-72/).
340
+
+[Learn Git Branching](http://learngitbranching.js.org/), visual and interactive way to learn Git on the web,
341
+
first mentioned in [Git Rev News Edition #30](https://git.github.io/rev_news/2017/08/16/edition-30/).
342
+
+[Git Gud: Master Git Through Play](https://www.gitmastery.me/), a modern website
343
+
to learn Git commands and concepts through an interactive game.
344
+
+[Git+ Coach](https://github.com/vishal2376/git-coach), a free education app
345
+
designed to help users learn Git and its commands. Written in Kotlin, for Android.
346
+
+[Git-it](https://github.com/jlord/git-it-electron) is a desktop (Mac, Windows and Linux) Electron app
347
+
that teaches you how to use Git and GitHub on the command line.
348
+
First mentioned in [Git Rev News Edition #7](https://git.github.io/rev_news/2015/09/09/edition-7/)
349
+
+[BeanHub](https://beanhub.io/) is a modern accounting book app
350
+
based on the most popular open source version control system Git
351
+
and text-based double entry accounting book software [Beancount](https://beancount.github.io/docs/index.html).
352
+
[Mostly open-sourced](https://beanhub.io/open-source/). See also the following posts by Fang-Pen Lin:
353
+
+[My Beancount books are 95% automatic after 3 years](https://fangpenlin.com/posts/2024/12/30/my-beancount-books-are-95-percent-automatic/).
354
+
+[How BeanHub works part 1: the danger of processing Beancount data with sandbox](https://beanhub.io/blog/2024/04/23/how-beanhub-works-part1-sandboxing/).
355
+
+[How BeanHub works part 2: large-scale auditable Git repository system based on container layers](https://beanhub.io/blog/2024/06/26/how-beanhub-works-part2-layer-based-git-repos/).
0 commit comments