• 17 Posts
  • 55 Comments
Joined 11 months ago
cake
Cake day: July 29th, 2023

help-circle
  • Because this is a casual discussion and that’d be more effort than I’m willing to put in.

    I didn’t asked you to write a research paper. You accused Git of suffering from usability issues and I asked you to provide concrete examples.

    And apparently that’s an impossible task for you.

    If you cannot come up with a single example and instead write a wall of text on you cannot put the effort to even provide a single opinion… What does this say about your claims?





  • I initially found git a bit confusing because I was familiar with mercurial first, where a “branch” is basically an attribute of a commit and every commit exists on exactly one branch.

    To be fair, Mercurial has some poor design choices which leads to a very different mental model of how things are expected to operate in Git. For starters, basic features such as stashing local changes were an afterthought that you had to install a plugin to serve as a stopgap solution.




  • I think a common misconception is that there’s a “right way to do git” - for example: “we must use Gitflow, that’s the way to do it”.

    I don’t think this is a valid take. Conventions or standardizations are adopted voluntarily by each team, and they are certainly not a trait of a tool. Complaining about gitflow as if it’s a trait of Git is like complaining that Java is hard because you need to use camelCase.

    Also, there is nothing particularly complex or hard with gitflow. You branch out, and you merge.















  • As a followup to this post, I’ve started including git rebase -i in my workflow when working on local branches. Basically things went like this:

    • I start working on an issue in a dedicated feature branch.
    • I commit small changes such as “Updates this feature in this component”, “fixes this glitch on this function”, “removes this dead code”.
    • I keep going until I’m done.
    • If I stumble upon small nits, I just commit them right at the head.
    • when I’m done I run an interactive rebase and move these small commits around to sort commits that belong together.
      • nits and followup fixes are squashed together,
      • cleanup commits are moved to the start of the branch to line them up to be pushed as a separate pull request,
      • push a PR for the issue

    To me this really paves a way to a far better workflow and faster turnaround times.





  • But we often hear about ‘corporate lobbying’ and you’ve described things mostly carried out by individuals or nonprofits.

    No, I’m describing lobbying. The definition of lobbying doesn’t depend on your market capitalization or revenue. A corporation does lobbying, just like unions do and industry representatives and community groups. If you have personal interests and want to raise awareness with stakeholders then you reach out to them.

    I mean, Wikipedia’s article on lobbying also refers to it as advocacy. From Wikipedia;

    In politics, lobbying or advocacy, is the act of lawfully attempting to influence the actions, policies, or decisions of government officials, most often legislators or members of regulatory agencies, but also judges of the judiciary.

    “Attempting to influence” is the operative principle.

    And so is “lawfully”. Which is not the same as the corruption you pinned on “Eastern countries”.