[2020-04-19]
The Communicative Value of Using Git Well β Math β© Programming [[git]][2017-05-06]
use hg-fast-export
to convert [[mercurial]] [[git]][2016-09-07]
git stores snapshots, not diffs [[git]][2019-08-18]
Highlights from Git 2.23 - The GitHub Blog [[git]][2019-08-24]
Fossil Versus Git | Lobsters [[git]][2019-08-02]
git - How do I remove a submodule? - Stack Overflow [[git]][2019-12-11]
git reflog expire βexpire=now βall && git gc βprune=now βaggressive [[github]][2019-05-10]
git rebase βcommitter-date-is-author-date βautostash HEAD~1 [[git]][2020-06-08]
Learn to change history with git rebase! [2018-11-28]
extraction - How to extract one file with commit history from a git repo with index-filter & co - Stack Overflow [[git]]
[2020-07-12]
- GitHub + why do we centralize issues, documents for a distributed version⦠| Hacker News [2018-01-01]
detect file type changes [[git]][2021-01-11]
How to keep your Git history clean with interactive rebase | GitLab [2020-11-16]
Why Git blame sucks for understanding WTF code (and what you should use instead) | Lobsters [2019-07-21]
git - How do I remove a submodule? - Stack Overflow https://stackoverflow.com/questions/1260748/how-do-i-remove-a-submodule/7646931#7646931 [[git]][2020-04-19]
The Communicative Value of Using Git Well β Math β© Programming [[git]][2017-05-06]
use hg-fast-export
to convert [[mercurial]] [[git]][2016-09-07]
git stores snapshots, not diffs [[git]]Different from SVN
It is important to note that this is very different from most SCM systems that you may be familiar with. Subversion, CVS, Perforce, Mercurial and the like all use Delta Storage systems - they store the differences between one commit and the next.
Git does not do this - it stores a snapshot of what all the files in your project look like in this tree structure each time you commit. This is a very important concept to understand when using Git.
Gitβs pack files are carefully constructed to effectively use disk caches and provide βniceβ access patterns for common commands and for reading recently referenced objects.
[2019-08-18]
Highlights from Git 2.23 - The GitHub Blog [[git]]https://github.blog/2019-08-16-highlights-from-git-2-23/
You may have used git grep to search for some text in your Git project, just as you may have used git diff to view active changes. What do the two have in common? They both display some contents in your repository, and both have support to show the surrounding function context with -p (short for --show-function) or -W (short for --function-context), respectively.
Configure your git blame to ignore cleanup changes.
https://www.moxio.com/blog/43/ignoring-bulk-change-commits-wβ¦
[2019-08-24]
Fossil Versus Git | Lobsters [[git]]https://lobste.rs/s/e3blgf/fossil_versus_git
This article is getting a few things about git wrong. They claim git only supports βOne check-out per repositoryβ. Heard of git worktree?
Git revise is especially useful for this commit stack workflow, as I call it. Iβm a huge fan.
Itβs a better rebase. So much better that it should be obligatory. You can split commits, batch rename them, and you donβt have to stash your work first.
wsdiff
image diff
nbstirpout
iadd
extra worktree dir
Iβve written up my ideas, under the name βLiterate Gitβ, at https://github.com/bennorth/literate-git if youβre interested.
The tool I wrote turns a structured git history into an interactive web page.
Thereβs an example there of how the ideas might work in a tutorial setting.
After I gave a talk on this work, one of the people in the audience tried it with the Haskell LLVM tutorial: https://lukelau.me/kaleidoscope/
[2019-08-02]
git - How do I remove a submodule? - Stack Overflow [[git]]https://stackoverflow.com/questions/1260748/how-do-i-remove-a-submodule/21211232#21211232
git rm the_submodule
rm -rf .git/modules/the_submodule
[2019-12-11]
git reflog expire βexpire=now βall && git gc βprune=now βaggressive [[github]][2019-05-10]
git rebase βcommitter-date-is-author-date βautostash HEAD~1 [[git]][2020-06-08]
Learn to change history with git rebase![2018-11-28]
extraction - How to extract one file with commit history from a git repo with index-filter & co - Stack Overflow [[git]]git filter-branch --index-filter 'git read-tree --empty; git reset $GIT_COMMIT -- $your $files $here' -- --all --
[2019-04-10]
set up git project commmand[2020-07-12]
- GitHub + why do we centralize issues, documents for a distributed version⦠| Hacker Newsfor an academic treatment of the defects in Git read: What's Wrong with Git? A Conceptual Design Analysis S. Perez De Rosso and D. Jackson. In Proceedings of the 2013 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! 2013)
[2018-01-01]
detect file type changes [[git]]for r in *; do pushd $r; git whatchanged | grep "\.\.\..T"; popd; done
GIT_SSH_COMMAND='ssh -v' git fetch
[2021-01-11]
How to keep your Git history clean with interactive rebase | GitLab[2020-11-16]
Why Git blame sucks for understanding WTF code (and what you should use instead) | LobstersFor archeology I really love git gui blame despite its dated UI
[2019-07-21]
git - How do I remove a submodule? - Stack Overflow https://stackoverflow.com/questions/1260748/how-do-i-remove-a-submodule/7646931#7646931 [[git]]he majority of answers to this question are outdated, incomplete, or unnecessarily complex.
A submodule cloned using git 1.7.8 or newer will leave at most four traces of itself in your local repo. The process for removing those four traces is given by the three commands below:
Git is a [[distributed version control system]]. It stores //whole objects//, not diffs, which is one of the key differences between Git and other version control systems of its time. This [[speeds up operations]] like checking out branches and processing commits in batch. //Distributed// means that while you can have a single source of truth, nothing will break when it goes down, because [[the whole object database is stored on users’ machines]], and [[data integrity is easily verified]] (commits can also be signed using OpenPGP).
=> https://git-scm.com | Official website
= Links => https://matrix.to/#/!ORfrUEFeWFcHAMLFLr:matrix.org/$1644101095103BLdVu:grin.hu?via=matrix.org&via=matrix.allmende.io&via=privacytools.io | Matrix message by @grin PΓ©ter Gervai:
That is probably an inherent lazyness of me, for example I passionately hate
git
and pretty much likemercurial
, because the first was created by a dozen hackers to themselves, and nobody really understands it, and nobody else can really use it to its full potentials, and all the documentation and help pages are obscure, complex and generally written from the perspective of someone already knowing the system and being pretty annoyed that have to explain it to anyone else; mercurial on th eother hand has an excellend handbook, good structured help system, easy to use commands which can be very complex if someone take the time and efforts to learn it. And both systems are basically the same, do the same, using the same principles. The difference is the attitude towards the people not yet being fluent in the system. Also see: [[https://git-man-page-generator.lokaltog.net/]]
=> https://warmedal.se/~bjorn/posts/2021-09-20-finally-understanding-the-power-of-git.html | Finally Understanding the Power of Git
A platform like Github makes this different, in that it abstracts these tools into a web UI and expect all collaborators to have an account at the platform. The more I learn about ways of collaborating outside of a centralised service like that, the more I’ve come to dislike them. Decentralised collaboration is a lot more enjoyable and empowering.
=> https://blog.sulami.xyz/posts/cleaning-up-git-history/ | Cleaning Up Git History - sulami’s blog
Cleaning up the history might seem tedious at first for marginal cosmetic benefits, but it gets much easier and faster with practice. Here I am collecting some tips for cleaning up a git commit history before publishing it to others, for example in the form of a pull request.
=> https://www.banterly.net/2021/07/31/new-in-git-switch-and-restore/ | New in Git: switch and restore
=> https://martowen.com/2016/05/01/git-submodules-vs-git-subtrees/ | Git Submodules vs Git Subtrees
Submodules are easier to push but harder to pull β This is because they are pointers to the original repository Subtrees are easier to pull but harder to push β This is because they are copies of the original repository
=> https://git-annex.branchable.com/
git-annex allows managing files with git, without checking the file contents into git. While that may seem paradoxical, it is useful when dealing with files larger than git can currently easily handle, whether due to limitations in memory, time, or disk space.
git-annex is designed for git users who love the command line. For everyone else, the git-annex assistant turns git-annex into an easy to use folder synchroniser.
=> https://ladycat.wordpress.com/2020/03/04/flashbake-Π°Π²ΡΠΎΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅-Π²-git/ | Flashbake β Π°Π²ΡΠΎΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π² git
Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠΎ-Ρ ΠΎΡΠΎΡΠ΅ΠΌΡ, ΡΡΡ Π½Π°Π΄ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΅ΡΡΡ ΡΠ΅Π»Π°Ρ ΡΠ΅ΠΌΠ° β Β«ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈΒ», ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅-ΡΠΎ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ², Π½ΠΎ Ρ ΡΠ²Π΅ΡΠ΅Π½Π°, ΡΡΠΎ ΠΏΠΈΡΡΡΠΈΠΌ β Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π½ΡΠΆΠ½ΡΠ΅. ΠΠ· Π½ΠΈΡ Ρ ΡΠΆΠ΅ ΠΊΠΎΡΠΎΡΡΠΉ Π³ΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ git.
=> https://ta180m.exozy.me/posts/gitea-actually-joins-the-fediverse/ | Gitea Actually Joins the Fediverse
Gitea federation development has reached a crucial milestone: federating with Mastodon! This is a //big deal//.
Rendering context...