• 0 Posts
  • 28 Comments
Joined 1 year ago
cake
Cake day: July 12th, 2023

help-circle





  • atyaz@reddthat.comtoProgrammer Humor@lemmy.mlAverage TS developer
    link
    fedilink
    arrow-up
    4
    arrow-down
    14
    ·
    11 months ago

    My comment was obviously devoid of any nuance, I am on programmer humor after all. I actually do use typescript, but I think fixing issues in application code that isn’t used by other code is a waste of time. I also think there are lots of advantages of a very dynamic language, like usable REPLs and much easier debugging. We can take these advantages way further by embracing the dynamic nature of javascript, like how lisps do it for example. But instead, everyone is happy going down the route of turning it into another c# (nothing against c# but we don’t need all languages to be c# and java).







  • Always merge when you’re not sure. Rebasing rewrites your commit history, and merging with the squash flag discards history. In either case, you will not have a real log of what happened during development.

    Why do you want that? Because it allows you to go back in time and search. For example, you could be looking for the exact commit that created a specific issue using git bisect. Rebasing all the commits in a feature branch makes it impossible to be sure they will even work, since they represent snapshots that never existed.

    I’ll never understand why people suggest you should default to rebasing. When prompted about why, it’s usually some story about how it went wrong and it was just easier to do it the wrong way.

    I’m not saying never squash or rebase. It depends on the situation but if you had to pick a default, it should be to simply merge.