1. 15

  2. 3

    Um. Following this link I got redirected to some kind of spam website, that was blocked by my browser.

    Edit: clicked through a bunch more times to try and reproduce, got something slightly different:

    1. 2

      I’ve seen this on compromised WordPress sites before. If it’s the same as what I investigated previously, they do something like push the spam/ad/etc. to 1% of traffic and that makes it difficult to inspect/discover.

      1. 1

        Does it say Comcast in there? Could that be targeted to that connection?

        1. 1

          That’s… worrying. It’s a bog-standard wordpress site. What happens if you go to https://zwischenzugs.com?

          1. 1

            I clicked through a dozen times and nothing happened. It definitely didn’t happen every time on the original link either.

            1. 11

              Looks like it’s a malicious ad coming in. Hard to say which ad network it came from, since the site is loading an obscene number of them…

        2. 2

          I’m not fully convinced you need to worry about the staging area until you have to use it. I frequently make use of it, but work with people who seem to do ok without knowing it.

          My thought would be to tell people that there is a way to add just a few files and commit them, but say that git commit -a is fine to use until you need to do otherwise.

          1. 4

            The power of git add -i is amazing.

            1. 1

              Yes! I’m using git add -p, which gets rid of the very first command prompt and goes straight to patch hunks.

            2. 1

              I’ve been using git for years, and the “staging” area has never been anything but more work for me.

            3. 1

              Nothing I didn’t know from the git-scm book, sadly

              1. 2

                It’s tough. I feel like we can’t penalize people for trying to explain things they find confusing, but yeah I agree there’s not much new ground being covered here.

                1. 2

                  This is the nth in a series of articles over the last decade that confirm over and over again to me that git was the worst possible way for people to be introduced to the concepts of DVCS. RIP tla/baz.

                  1. 2

                    IMO git’s a great tool from a functional perspective with an AWFUL human interface.

                    I’ve long thought that a few weeks of a UX designer’s time would do it wonders :)

                    1. 2

                      I’ve seen people use SmartGIT and GitKraken just fine for basic stuff and esp. GitKraken looks like it could handle more advanced cases as well.

                      The number one thing is to make the four stages/states sound friendly and nice instead of scary and awkward.

                      1. 2

                        Respectfully you’re missing the point.

                        Sure, we can put nicer human interface on top of the base tools, but my point was simply that git in and of itself, has a piss poor human interface.

                        I love Git, I use it Every Single Day and have for y-e-a-r-s, but I was a release engineer for a decade and a half, I’ve administered and taught CVS, SVN, Perforce, and Git, and I feel like it’s important to be crystal clear about the good and bad in any tool.

                        1. 1

                          I find the point irrelevant.

                          Sure, the default git cli is pretty shitty, but until someone does something about it, it is what it is.

                          There are multiple GUI approaches and at least some attempts at alternative Git cli tools if that’s your preference.

                          1. 2

                            You’re telling me that a GUI can fix the problem of users not understanding the difference between a merge and a rebase? Or what it actually means for commits to be on a branch?

                            The things that make Git’s human interface awful aren’t command line parameters per se, or not JUST those, they’re the conceptual levers and gears that users have to interact with to make the system go. No GUI helps with that in my opinion.

                            I think you’re misconstruing what I’m saying to actually MEAN “Git is an awful tool”.

                            That’s not what I’m saying at all. Git is an AWESOME tool with really, REALLY awful UX.

                            You can think that irrelevant if you like, but I think you’re wrong.

              2. 0

                I don’t feel that “stages” are a particularly good way to describe the 4 states you mention. I think “states” encapsulates the reality of the situation much better.

                A “stage” indicates a larger part of an ongoing process.

                Change management lifecycle maybe?

                1. 0

                  My manual page for git rebase says:

                  Reapply commits on top of another base tip

                  this is much more comprehensible than previous versions of this man page, but will still confuse many people.

                  Huh, this was the main takeaway for me. They finally rewrote that nonsense? But it’s still not that great.

                  I say “detach a series of commits from one base and reattach them at another base”, but I’m not sure if that’s any clearer. “Applying” commits is a bit weird because commits aren’t diffs or patches, even if that’s their most common representation.