Folks who squash their #git merges, I’m curious why you are making that trade-off. I’m guessing the pro argument is a cleaner merge graph?
The big argument against it for me is that you lose granularity for git bisect. I've often been able to narrow down breakage (sometimes long past the merge) due to individual commits in the merge. If I'd merged in a giant blob all I'd have had to go by is that giant blob. (1/2)
I'm hosting my own Git instance for a while now (Gitea) and I'm still not sure if I want to have it as my default/main instance or stick with GitHub as my main.
What would you do?
I'm also very curious what self-hosted instances you guys use.
cd - goes back to your previous directory. Also see pushd, popd if you want to treat the directory history as a stack. Nevertheless, excessively typing commands for navigating just gets you repetitive strain injury. I use ranger as a TUI file manager. Hopping in/out of the shell is as easy as S or Ctrl+D.
vim has an inbuilt diffing tool, vimdiff. It opens the two files side by side with color highlighting. It might not be provided by your default vim package. On Arch it's provided by gvim.
git rebase -i HEAD~5 is imo a better way to hack at your last 5 commits than (rebase, reorder, squash, edit, etc) than what I've seen GUI git tools do.
git add -p, git checkout -p(for "patch") runs the command on one chunk at a time, allowing you to inspect each one before doing anything. It's useful if you want to commit or undo only part of yout work. -p works for other commands too.
I can’t get over how cool it is to view my posts from any server. I’m definitely going to use activitypub for my social media I’m planning on making. I was going to use @Discourse , but considering it’s like #GitLab where you are only able to self host and each instance of discourse can’t interconnect makes me kinda sad. But activitypub seems like the only way I feel happy in both ways.
I'm unsure if signing my #Git commits is the best idea. When my #GPG key expires, commits will show on #Github as unverified. Should I stop signing my commits? I'm aware you can renew keys. However, if you no longer have access to the key, then it can't be renewed.
If a GPG key could no longer be retrieved, all commits signed with that key would appear as unverified, from what I understand.
Perhaps #boost for more visibility? :blobcatshrug:
A surprisingly common mistake people do when contributing to #OpenSource projects is to forget the (often required) sign-off on their commit, and then close the PR only to open a new one where the sign-off is included. This isn’t needed! Next time, just:
git commit --amend --signoff
git push --force
And your signoff will be added to the commit in your PR.
My this year’s holiday gift to maintainers so they have something to link to, and to contributors so they don't make a painful mistake in the first place:
I've seen a lot of pro-#Fossil, anti-#Git discussion recently.
Not that I love Git, but it does the job and almost all deployment platforms have support for Git only.
And, am I the only one who needs a staging area because I have to commit only a part of my changes? Often even line-based.
And, sometimes I want to squash 20 ugly commits into a single one, destructively changing the commit history. Really!
And, sometimes I need a hosting platform for a project and there is not a single serious one for Fossil. What's the point in using Fossil when I have to do a Git-export?
And, most importantly, there is #Magit :blobcatmeltlove:.
So ... although I can feel the love for Fossil, it simply doesn't work for most of my use cases.
I usually have lots of git branches with various iterations of whatever I'm working on. And I lose track what each branch contains. git range-diff is great, but a bit tedious.
Here's a helper alias to "range compare" two branches. It finds their common ancestor, and range diffs them.
It was surprisingly easy to port all my custom fish and git config to home manager. The next big thing I need to figure out is how to manage multiple java versions and assign their directory to environment vars. Currently using @asdf_vm but it doesn‘t seem to work on @nixos_org. #linux#nixos#homemanager#java#fishshell#git#asdfvm#shell#dotfiles
Do you host your own #Git server? What are you using for it?
I’m looking for something that’s really low maintenance, and I probably don’t need project management, issue tracking, or pull requests. Maybe not even user management. It’s probably just me and my repos.
I know that I can just use SSH+Git on the remote side, but I maybe would like some kind of web interface. Maybe gitweb? But it’s Perl. Or cgit? Any other suggestions like these two?
"In 2020, the community discovered that GitHub has a for-profit software services contract with the USA Immigration and Customs Enforcement (ICE). Activists, including some GitHub employees, have been calling on GitHub for two years to cancel that contract. GitHub's primary reply has been that their parent company, Microsoft, has sold Microsoft Word for years to ICE without any public complaints"
➥ @conservancy