GitHub is fucking broken fucking again



  • @Renan said:

    God I hate the client in the OP. I use msysgit and even though ugly as hell it does the most of the job. What little it doesn't do, I do via bash.
     

    In the past I've used http://sourceforge.net/projects/gitextensions/ which is a nice shell on top of msysgit



  • @blakeyrat said:

    @gu3st said:
    Don't forget the part that he runs a non-standard setup as well which has a Environment variable available for userdata set to read-only..

    It's a standard setup, the Environment variable isn't read-only the path it points to is.

    @gu3st said:

    and is confused when it asks you to put something in that path.

    I'm not confused; it's just impossible for me to put something in that path as it's read-only.

    Just out of curiosity, did you try my possible solution in the third post? Genuinely trying to help



  • I wonder how often this problem originally arises from someone developing on Linux, deciding to start supporting Windows, and trying to look up "Where is the user's home directory on Windows?" instead of "Where does Windows expect me to store application-specific configuration?"

    And how often the problem sticks around longer than seems reasonable because there is a workaround as easy (to such a developer's way of thinking) as "Well, you can just edit the config file and point it somewhere else." Doesn't look like that would apply here, but if I remember correctly it was feasible to get Aptana to run in Blakey's environment by changing where it expected to find the workspace directory, you just had to choose between having it fail spectacularly first and then finding out why, or being psychic and anticipating that they didn't bother to get it right.



  • So, if Windows has no home directory, what's this?

    the folder with my name on it



  • @MiffTheFox said:

    So, if Windows has no home directory,
    Who said that?



  • So I have a story.  I worked on some code a few months ago and deployed it to the website.  Last week, someone was trying to change the behavior in the code that I wrote, and it wasn't working right.  I acknowledged that I had written a bug because I didn't account for something that should have been accounted for and helped them to fix it.

    You may relate that story to this thread as you deem appropriate.


  • Considered Harmful

    @blakeyrat said:

    it's not safe to save files in there as it could very well be read-only

    Is it actually documented somewhere that it's OK for this directory to be read-only? This seems contradicted by your very next line. @blakeyrat said:

    AFAICT its only purpose is to define where a Special Folder gets created if it doesn't exist and some program asks for it.

    How could a folder get created if it's read-only?



  • @joe.edwards said:

    @blakeyrat said:
    it's not safe to save files in there as it could very well be read-only

    Is it actually documented somewhere that it's OK for this directory to be read-only? This seems contradicted by your very next line. @blakeyrat said:

    AFAICT its only purpose is to define where a Special Folder gets created if it doesn't exist and some program asks for it.

    How could a folder get created if it's read-only?

    If the Administrator (eg, the person who defines system policy, eg, god) has created all the folders He wants, He might then make the folder read-only so that new folders do not spring into being without his consent.



  • @pkmnfrk said:

    Just out of curiosity, did you try my possible solution in the third post? Genuinely trying to help

    I don't recall asking for help. If you want to see if it works, why don't you download their broken-ass program and try it yourself?



  • @blakeyrat said:

    @pkmnfrk said:
    Just out of curiosity, did you try my possible solution in the third post? Genuinely trying to help

    I don't recall asking for help. If you want to see if it works, why don't you download their broken-ass program and try it yourself?

    Well no, because I'm not a dumb enough shit to try it in the first place. Forgive me for assuming you wanted to perform your job, I'll know better next time.



  • @MiffTheFox said:

    So, if Windows has no home directory, what's this?

    the folder with my name on it

    You pedantic dickweed fuckers.

    IF YOU ARE AN APPLICATION DEVELOPER, FOR ALL INTENTS AND PURPOSES THERE IS NO "HOME" FOLDER YOU CAN WRITE FILES TO. If you're writing files to the folder screenshotted by Miff the Furry up there, your application is buggy and wrong. Yes, there is a folder named after the user. No, it's not a "home" folder in the way it is in any Linux or Linux-like OS. Yes, you're technically able to write files to it in most cases. No, you can't write files to it.

    Ok? Sheesh.


  • ♿ (Parody)

    @pkmnfrk said:

    @blakeyrat said:
    @pkmnfrk said:
    Just out of curiosity, did you try my possible solution in the third post? Genuinely trying to help

    I don't recall asking for help. If you want to see if it works, why don't you download their broken-ass program and try it yourself?

    Well no, because I'm not a dumb enough shit to try it sabotage my Windows / user configuration in the first place. Forgive me for assuming you wanted to perform your job, I'll know better next time.

    FTFY. It's funny that blakey thinks that going along with the design of the system means that his weird-ass setup isn't weird.



  • @boomzilla said:

    @pkmnfrk said:
    @blakeyrat said:
    @pkmnfrk said:
    Just out of curiosity, did you try my possible solution in the third post? Genuinely trying to help

    I don't recall asking for help. If you want to see if it works, why don't you download their broken-ass program and try it yourself?

    Well no, because I'm not a dumb enough shit to try it sabotage my Windows / user configuration in the first place. Forgive me for assuming you wanted to perform your job, I'll know better next time.

    FTFY. It's funny that blakey thinks that going along with the design of the system means that his weird-ass setup isn't weird.

    You really think that having roaming profiles is a weird setup?  You really think that doing stuff that Windows specifically enabled you to do is sabotaging your system?  If I had a program that saved to \serverUsers\HR hardcoded, and just assumed that it would work on your system, that wouldn't be a bug?  If you accept it is, why is saving to another folder that doesn't exist not a bug, if it is because I made an assumption about your hardware when I could have just looked it up?


  • Considered Harmful

    @Sutherlands said:

    You really think that doing stuff that Windows specifically enabled you to do is sabotaging your system?

    Of course Windows (actually, NTFS) allows you to make any directory read-only. That doesn't make it a supported configuration. Windows enables you to do lots of dumb things that could break programs. That doesn't mean it's OK to do so.

    Setting the location of special directories to non-default locations is a supported configuration. Doing funky things with permissions is not necessarily.


  • ♿ (Parody)

    @Sutherlands said:

    You really think that having roaming profiles is a weird setup?

    We've had this discussion before, and the consensus was that it was pretty rare, which maybe isn't the best synonym for "weird," but I'm comfortable describing what I know about blakey's company's setup as weird. But it seems like blakey's setup is not as simple as just a roaming profile. I could certainly be wrong.

    @Sutherlands said:

    You really think that doing stuff that Windows specifically enabled you to do is sabotaging your system?

    When it's something that causes lots of trouble? Yes. For someone else to duplicate blakey's setup on their currently functional system? Definitely. The point of the system isn't to stay within the designers' boundaries but to get work done. One design feature is being able to localize your system. But if you changed your system to use a language and alphabet that you don't know, you'd also be sabotaging your system to do something that Windows specifically enables.

    @Sutherlands said:

    If I had a program that saved to \serverUsers\HR hardcoded, and just assumed that it would work on your system, that wouldn't be a bug?  If you accept it is, why is saving to another folder that doesn't exist not a bug, if it is because I made an assumption about your hardware when I could have just looked it up?

    I'm not sure why you wrote any of this. I'd guess that possibly blakey's shoulder aliens have paid you a visit, except that you're double spacing after sentences.



  • @joe.edwards said:

    @Sutherlands said:
    You really think that doing stuff that Windows specifically enabled you to do is sabotaging your system?

    Of course Windows (actually, NTFS) allows you to make any directory read-only. That doesn't make it a supported configuration. Windows enables you to do lots of dumb things that could break programs. That doesn't mean it's OK to do so.

    Setting the location of special directories to non-default locations is a supported configuration. Doing funky things with permissions is not necessarily.

    The program is using a directory it's not supposed to use!!

    @boomzilla said:

    @Sutherlands said:
    You really think that having roaming profiles is a weird setup?
    We've had this discussion before, and the consensus was that it was pretty rare,
    What? I don't remember this consensus.  Roaming profiles are not rare.  This page suggests in a very highly scientific poll that over 70% of workplaces use roaming profiles.  I would be very surprised at any medium/large corporation that doesn't use them, since they allow you to just replace hard drives in computers that get borked and you still have all your documents and settings.

    @boomzilla said:

    @Sutherlands said:
    You really think that doing stuff that Windows specifically enabled you to do is sabotaging your system?
    When it's something that causes lots of trouble? Yes. For someone else to duplicate blakey's setup on their currently functional system? Definitely. The point of the system isn't to stay within the designers' boundaries but to get work done.
    Let's see... first, roaming profiles likely helps his corporation get work done much more than github does.  And given that the problem in this case comes from github for windows's bad code, the blame still lies with them.

    @boomzilla said:

    I'm not sure why you wrote any of this. I'd guess that possibly blakey's shoulder aliens have paid you a visit, except that you're double spacing after sentences.
    Because a program saving to the wrong directory is a BUG.  IT'S A BUG.  THE PROGRAM HAS A BUG.

    So to reiterate:

    1) Blakey is not sabotaging his system because he has little to no control over what is going on in this scenario.

    2) The corporation likely views roaming profiles as more helpful than github for windows.

    3) Github for windows has a bug that causes it to not work.

    This isn't to say that blakey isn't a douche for snapping at everyone who tries to help, but seriously man, quit saying he sabotaged his system.



  • Surely git is TRWTF, used primarily by people who want to look cool.


  • Considered Harmful

    @Sutherlands said:

    I would be very surprised at any medium/large corporation that doesn't use them, since they allow you to just replace hard drives in computers that get borked and you still have all your documents and settings.

    Well, be very surprised, I work for a large corporation with presence in 71 countries/regions, and we don't use them (in any department I've seen). Mainly because we're each issued a laptop and never expected to use anyone else's.

    There is mandatory backup software that runs constantly, and it's always using more CPU than any other process.


  • ♿ (Parody)

    @Sutherlands said:

    @boomzilla said:
    We've had this discussion before, and the consensus was that it was pretty rare,
    What? I don't remember this consensus.  Roaming profiles are not rare.  This page suggests in a very highly scientific poll that over 70% of workplaces use roaming profiles.  I would be very surprised at any medium/large corporation that doesn't use them, since they allow you to just replace hard drives in computers that get borked and you still have all your documents and settings.

    I'll have to take your word for it. The only place I've had a roaming profile is within a closed lab environment (and this is in a fairly large corporate and various government settings). It seems like the increased mobility of workers makes this more difficult to make useful. And then we're told to save important things to a network drive, plus provided with a backup service.

    @Sutherlands said:

    1) Blakey is not sabotaging his system because he has little to no control over what is going on in this scenario.

    You're the only one who says anything about blakey sabotaging his system.

    @Sutherlands said:

    2) The corporation likely views roaming profiles as more helpful than github for windows.

    3) Github for windows has a bug that causes it to not work.

    I don't disagree with either of those things.

    @Sutherlands said:

    ...quit saying he sabotaged his system.

    OK. I'll say it again. I never said that blakey sabotaged his or anyone else's system. My original FTFY was pretty terse, but I thought that my last post spelled it out a bit better.



  • @Sutherlands said:

    This isn't to say that blakey isn't a douche for snapping at everyone who tries to help,

    I didn't ask for help.


  • Considered Harmful

    @blakeyrat said:

    @Sutherlands said:
    This isn't to say that blakey isn't a douche for snapping at everyone who tries to help,

    I didn't ask for help.

    If you don't get help at Charter, please, get help somewhere.



  • @boomzilla said:

    @Sutherlands said:
    1) Blakey is not sabotaging his system because he has little to no control over what is going on in this scenario.

    You're the only one who says anything about blakey sabotaging his system.

    @boomzilla said:

    @pkmnfrk said:
    Well no, because I'm not a dumb enough shit to try it sabotage my Windows / user configuration
    FTFY.
    @boomzilla said:
    My original FTFY was pretty terse, but I thought that my last post spelled it out a bit better.

    Your follow-up post said nothing to clear anything up.  I'm willing to listen if you want to start over and state what you're going for.



  • @blakeyrat said:

    @Sutherlands said:
    This isn't to say that blakey isn't a douche for snapping at everyone who tries to help,

    I didn't ask for help.

    Nobody said you did.


  • ♿ (Parody)

    @Sutherlands said:

    @boomzilla said:
    @Sutherlands said:
    1) Blakey is not sabotaging his system because he has little to no control over what is going on in this scenario.

    You're the only one who says anything about blakey sabotaging his system.

    @boomzilla said:
    @pkmnfrk said:
    Well no, because I'm not a dumb enough shit to try it sabotage my Windows / user configuration
    FTFY.

    I guess you cannot tell the difference between the words, "blakeyrat" and "pkmnfrk." I can't blame you for that. They share some letters.

    @Sutherlands said:

    @boomzilla said:
    My original FTFY was pretty terse, but I thought that my last post spelled it out a bit better.

    Your follow-up post said nothing to clear anything up.  I'm willing to listen if you want to start over and state what you're going for.

    So, if pkmnfrk wants to replicate blakey's issue, he'd have to sabotage his system by changing his (OK, this is an assumption) working configuration for one that probably breaks something on his system (if for no other reason than that the stuff he needs to use won't be where it's useful to him because he had to replicate blakey's weird-ass setup). Sure, it could just be temporary, and I wouldn't object to that modifier. But that's way too much effort to go through for someone who not only doesn't ask for help, but views attempts to help him as offensive and in any case is incapable of understanding or following the suggestion.



  • FWIW, I have found it useful, since starting to use Cygwin on Windows XP in the early 00s, to move my "My Documents" folder to "D:\Home\username", and set up an environment variable called HOME that points to that location. Sure, I do get a bunch of .file and .directory entries in there, but they are significantly less irritating than things like "My ACME Integration Services Setup Example Illustration Widget Factory Generator Case Studies" style directories that are created by certain programs.

    I actually do not want Unixy programs to obey Windows conventions. That has its advantages and disdvantages for me. YMMV.



  • @boomzilla said:

    So, if pkmnfrk wants to replicate blakey's issue, he'd have to sabotage his system by changing his (OK, this is an assumption) working configuration for one that probably breaks something on his system (if for no other reason than that the stuff he needs to use won't be where it's useful to him because he had to replicate blakey's weird-ass setup). Sure, it could just be temporary, and I wouldn't object to that modifier. But that's way too much effort to go through for someone who not only doesn't ask for help, but views attempts to help him as offensive and in any case is incapable of understanding or following the suggestion.
    Ok, I see what you're saying.  Though I don't see how you can say that one person is sabotaging their system because they are setting it up like someone else's system, but not imply that the other person has a sabotaged system.


  • Considered Harmful

    @Sutherlands said:

    @boomzilla said:
    So, if pkmnfrk wants to replicate blakey's issue, he'd have to sabotage his system by changing his (OK, this is an assumption) working configuration for one that probably breaks something on his system (if for no other reason than that the stuff he needs to use won't be where it's useful to him because he had to replicate blakey's weird-ass setup). Sure, it could just be temporary, and I wouldn't object to that modifier. But that's way too much effort to go through for someone who not only doesn't ask for help, but views attempts to help him as offensive and in any case is incapable of understanding or following the suggestion.
    Ok, I see what you're saying.  Though I don't see how you can say that one person is sabotaging their system because they are setting it up like someone else's system, but not imply that the other person has a sabotaged system.

    Person A: My configuration is not compatible with this program.
    Person B: Well, I'm not going to set up my configuration in a way that breaks that program.
    Person C: Of course not, why would you sabotage your own system?
    Person D: Person A didn't sabotage his own system.
    
    Person C: I didn't say he did. Person D: Yes you did. Person C: No I didn't. Person D: "Person C: Of course not, why would you sabotage your own system?"
    Person C: I was talking to Person B.


  • Email exchange with GitHub support (I will admit they have pretty good, responsible support):

    @GitHub employee said:

    We're working on improving the error message in GitHub for Windows to be more descriptive.

    I hope this doesn't turn you off from Git - it can take a little while to adjust to, but once you start using it, it's hard to use any other form of version control.

    @Blakeyrat said:

    So far all I've seen is a system that's unpredictably buggy*, undiscoverable, difficult-to-use, utterly and pointlessly hostile towards GUI users, featureless**, pedantic about weird things***.

    Oh and if there's a conflict, it craps gibberish all over your source code. Which is completely indefensible-- the entire point of the program is to protect your source code from things like that!

    I'm not going to say that Tortoise SVN or TFS are perfect paragons of perfectness, but they're mature, reliable, and they at least put in a tiny iota of effort into ensuring normal human beings can actually use the thing without needing 4 hours of tutoring.

    Anyway, sorry for the rant. If it were at all my choice, I'd never be using it, saving both you and me this effort. I'm trying to be patient with it.

    * In your defense the utterly random "detached head" errors seem to be under control now

    ** You can't force it to upload when people commit, leading to this conversation in EVERY SINGLE STAND-UP MEETING: "hey did you finish that feature?" "Yeah it's committed" "But it's not on the server" "Oh crap I forgot". Every single day! Why can't you force it to upload the damned commits? Something that every other source control does by default?

    *** Like caring about having a real name and email address before making a commit, even though I'm committing to a repository with only a few users, all of whom know each other, what's the point of caring? Just check-in with a blank name, it's ok, we'll cope.


  • ♿ (Parody)

    @Sutherlands said:

    Though I don't see how you can say that one person is sabotaging their system because they are setting it up like someone else's system, but not imply that the other person has a sabotaged system.

    Noted. I'll try to write less limited snark in the future. To be fair (or revisionist), perhaps it was installing that broke ass git client that was the sabotage.

    Here is some interesting documentation: @Microsoft Technet said:

    Recognized Environment Variables
    CSIDL_PROFILE The user's profile folder. A typical path is C:\Documents and Settings\username. Applications should not create files or folders at this level; they should put their data under the locations referred to by CSIDL_APPDATA or CSIDL_LOCAL_APPDATA.
    HOMEPATH Same as %USERPROFILE%.
    USERPROFILE Same as CSIDL_PROFILE.

    This makes the workaround quoted in the OP ...very odd. I just checked these values on an instance of XP and 7, and the HOME variables combine to the USERPROFILE value as expected. If they are different for blakey, then perhaps his configuration really is sabotaged.

    So one wonders what their eventual fix will be.



  • So, I have to admit, that I do love git. However, I do think that, while pretty, the GitHub for Windows software is crap. I will second the previous suggestion for GitExtensions if you need a Gui, but git has one of the most complete command-line interfaces I've used in an SCM.

    While you can make git push after every commit, it's oftentimes counter-productive. Personally, I use git as an extended undo. I commit after each little change, then when I get to a compilable state, I will squash all the commits to the previous compilable state. At that point, I'll examine what the changes were, make sure they're all for one feature, and split them out to multiple (compilable) commits if they're not explicitly related. Once I have a complete history, then I'll push (to a personal branch) or pull the master and merge it.



  • @blakeyrat said:

    You pedantic dickweed fuckers.

    IF YOU ARE AN APPLICATION DEVELOPER, FOR ALL INTENTS AND PURPOSES THERE IS NO "HOME" FOLDER YOU CAN WRITE FILES TO. If you're writing files to the folder screenshotted by Miff the Furry up there, your application is buggy and wrong. Yes, there is a folder named after the user. No, it's not a "home" folder in the way it is in any Linux or Linux-like OS. Yes, you're technically able to write files to it in most cases. No, you can't write files to it.

    Ok? Sheesh.

    Ah, so Windows does have a home directory except when it doesn't?

    @blakeyrat said:

    • There is no Linux-style "home" folder in Windows.

    Also, if furries give bad tech advice then how come everybody (including "internet famous" programmers from Atwood to Zawinski) loves that PHP article. I mean it was written by a Pokemon furry for Christ's sake. (Not to mention that it is also full of misinformation anyways.)



  • @blakeyrat said:

    Compare getting familiar with this system compared to, say, trying to determine in your head what a particular CSS rule does without guess-and-check.


    I guess actually knowing CSS isn't taken into consideration, versus, say, trying to change the background image of your MySpace.



  • @MiffTheFox said:

    Ah, so Windows does have a home directory except when it doesn't?

    You're being purposefully dense. Stop it.

    Windows, by convention, has a folder for each user's profile. From the perspective of application developers, this folder does not exist. Unless you work at Microsoft, on the Windows development team, this folder does not exist. If you're an application developer using that folder for any reason, your program is broken. Kudos to that idiot I don't reply to for linking to the actual TechNet article on the subject.

    @MiffTheFox said:

    Also, if furries give bad tech advice

    I never made that claim.



  • @blakeyrat said:

    @JBotAlan said:
    To my knowledge (which I'll freely admit is rather limited) everything in the Linux world is held in one unified home directory.

    Well derp, because that's how things were done in 1973 and God-forbid Linux ever change anything ever in history ever! Why it might (shudder) actually advance the art!

     

    Because companies like Microsoft said it's easier to drop stuff all into one bucket and filter the search results. And I agree with them.[1]

    We've moved on from days of organising things per-directory - look at the Start Menu. We don't look for things in a specific location, we ask the OS to find it for us, we just give it a search. The idea of storing movies, music, documents, games into separate directories is an outdated concept: the idea of displaying just what we want to see so we've got a filtered picklist is no different to stuffing everything into one big table and using WHERE to show just the stuff of interest.

    It took me a bit to come around to the idea, but I'm from the old-school *nix days of dumping it in my home directory then using some find/search to locate my stuff, rather than searching for specific dirs.

    [1] Sharepoint "Shared Libraries".


  • Considered Harmful

    So up until very recently I've been an early-adopter and always wanted the most cutting edge technology, but it seems tech trends have taken a bizarre turn lately and for the first time there's a new Windows I don't want (I even installed ME and Vista). The new put everything in the same pile and search it bandwagon is also something I don't want any part of.



  • @Sarcarsm said:

    If you want specific quotas, you simply set them up either through fstab if you want it on the dir or with with grpquota (think that's the right command, haven't used it in awhile) if you want it at the user level. This is no less/more complex than Windows.
     

    yeah.... unfortunately, it IS more complex than Windows:

    • usrquota and grpquota can only be set against mount points (not against individual directories)
    • the syntax of the setquota command and edquota command is a right pain (edquota allows you to EDIT your own consumption figures, FFS)
    • repquota shows no quota limits for a user until they actually write something to the filesystem. 
    • you bring the filesystem online with quota management, then set the quotas against the users/groups, and it all looks fine.. BUT YOU STILL NEED TO TURN THEM ON! FFS, TELL ME YOU'RE NOT WORKING YOU TWAT

    It's crying out for some better commands and GUI tools. It works, and I use it... but I'm gonna admit that the way in which it's done in Windows seems much easier.

    @tdb said:
    For once I have to agree with Blakey. His system configuration might be unusual, but it's not broken

    I agree with tdb there. I don't see anything broken with his config - the whole point of APIs and env settings is to make software work with different user configurations.


  • ♿ (Parody)

    @Cassidy said:

    @tdb said:
    For once I have to agree with Blakey. His system configuration might be unusual, but it's not broken

    I agree with tdb there. I don't see anything broken with his config - the whole point of APIs and env settings is to make software work with different user configurations.

    I have it on very good authority that if something doesn't work, from the user's point of view, it doesn't work and it doesn't really matter whose fault it is. Why are you guys trying to apologize for broken software?



  • @boomzilla said:

    @Cassidy said:
    @tdb said:
    For once I have to agree with Blakey. His system configuration might be unusual, but it's not broken

    I agree with tdb there. I don't see anything broken with his config - the whole point of APIs and env settings is to make software work with different user configurations.

    I have it on very good authority that if something doesn't work, from the user's point of view, it doesn't work and it doesn't really matter whose fault it is. Why are you guys trying to apologize for broken software?

    His Windows config is valid and GitHub doesn't work. Nobody is apologising for broken software here, people are just pointing put that it isn't Windows that is broken but GitHub that is at fault.


  • ♿ (Parody)

    @spenk said:

    @boomzilla said:
    I have it on very good authority that if something doesn't work, from the user's point of view, it doesn't work and it doesn't really matter whose fault it is. Why are you guys trying to apologize for broken software?

    His Windows config is valid and GitHub doesn't work. Nobody is apologising for broken software here, people are just pointing put that it isn't Windows that is broken but GitHub that is at fault.

    You must be new here.

    I was thinking about his config, where they point the %USERPROFILE% at a read only network drive. This means that anything that actually lives on that drive cannot be written to, and so all of the appdata, etc, must be somewhere else entirely. Is there anything useful there that can be read only? Can something else be mapped to Z:? Someone else suggested changing the environment variables. I suppose there's no reason why you couldn't just map it to whatever random place you wanted where you had write access. Very odd....

    DISCLAIMER: THE ABOVE POST WAS NOT INTENDED TO DIAGNOSE, CORRECT, OR WORK AROUND ANY PROBLEM, REAL OR IMAGINED. ANY FOLLOW UP THAT ASSUMES OTHERWISE WILL BE PRESUMED TO HAVE BEEN DICTATED OR AT LEAST INSPIRED BY THE POSTER'S SHOULDER ALIENS. IN NO CASE SHOULD ANYONE EVER USE CREATIVE OR CRITICAL THINKING TO FIGURE OUT HOW TO GET WORK DONE IN SPITE OF INEVITABLE SOFTWARE PROBLEMS. ONLY LUDDITES WHO ARE OVERLY PROTECTIVE OF THEIR LAWNS DO THAT.



  • @blakeyrat said:

    TFS, the replacement for SourceSafe is actually quite nice and has a lot of features you don't see elsewhere. Like being able to actually link the bug report with the source code check-in that fixed it, or being able to add images to check-in comments, and some other nifty stuff.
    GitHub also supports the two you mentioned. If you use the magic words "issue #" or "bug #" (or even just a number sign) in your commit message, it's automatically linked and – if you use the words "fixes" or "closes" – closed. You can also add an image with ![alt text](image url), as part of standard Markdown. And no, you're not supposed to know this.



  • @tdb said:

    For once I have to agree with Blakey. His system configuration might be unusual, but it's not broken

    @Cassidy said:

    I don't see anything broken with his config

     @boomzilla said:

    Why are you guys trying to apologize for broken software?

    Hope those points make it clearer - both tdb & I were pointing out that it wasn't Blakey's configuration that's broken - it was the software that couldn't cope with an unexpected configuration. 


  • Considered Harmful

    @Cassidy said:

    Hope those points make it clearer - both tdb & I were pointing out that it wasn't Blakey's configuration that's broken - it was the software that couldn't cope with an unexpected configuration. 

    This sounds so familiar.


  • ♿ (Parody)

    @Cassidy said:

    @tdb said:
    For once I have to agree with Blakey. His system configuration might be unusual, but it's not broken

    @Cassidy said:
    I don't see anything broken with his config

    @boomzilla said:
    Why are you guys trying to apologize for broken software?

    Hope those points make it clearer - both tdb & I were pointing out that it wasn't Blakey's configuration that's broken - it was the software that couldn't cope with an unexpected configuration.

    Yes. It's absolutely clear that people like you embody all that is wrong with attitudes in software development. STOP TALKING ABOUT WHY SOFTWARE ISN'T WORKING AND JUST FIX IT ALREADY. I'm not interested in explanations or reasoning. Just MAKE IT WORK already, you Luddite geezer.



  • @boomzilla said:

    I was thinking about his config, where they point the %USERPROFILE% at a read only network drive. This means that anything that actually lives on that drive cannot be written to, and so all of the appdata, etc, must be somewhere else entirely. Is there anything useful there that can be read only? Can something else be mapped to Z:? Someone else suggested changing the environment variables. I suppose there's no reason why you couldn't just map it to whatever random place you wanted where you had write access. Very odd....

    A readonly profile isn't that unusual, normally it is done as a mandatory profile rather than making the entire folder readonly but this allows a network admin to lock down certain aspects of the system (start menu, desktop shortcuts etc.) to prevent changes persisting after a logout. Normally if this is done My Documents etc should be redirected to a writeable location if there is a requirement for documents to be saved etc. This has been in windows since NT4 at least, fairly sure it was in there since 3.5 but I can't be arsed to check.

    If it was only as far back as NT 4 that still makes it a suppoted feature for about 16 years, software that can't get this right but is supposed to run under windows is broken.


  • Considered Harmful

    @boomzilla said:

    Yes. It's absolutely clear that people like you embody all that is wrong with attitudes in software development. STOP TALKING ABOUT WHY SOFTWARE ISN'T WORKING AND JUST FIX IT ALREADY. I'm not interested in explanations or reasoning. Just MAKE IT WORK already, you Luddite geezer.

    Wait, did you change your user picture again? It hasn't felt the same since the pangolin.



  • @English Man said:

    Surely git is TRWTF, used primarily by people who want to look cool.
     

    Towards whom? Is there a wild underground society of people who wear sunglasses and ride waterskis while version con-trolling I've missed?

    There is a lot of things you could say about git, linux, open-source or any other topics your shoulder monkeys freely associated with this topic in your mind. The current trend of calling the people using them hipsters, stylers or "wanting to look cool" makes NO SENSE WHATSOEVER. There isn't even any context. You don't even provide any context. It's like breaking into the room of somebody using CouchDB and scream: "You're just in this for the coolness!".  That hipster programmer thing on twitter makes more sense that this.



  • @blakeyrat said:

    EWhy can't you force it to upload the damned commits? Something that every other source control does by default?
      

    Because it's not like "very other source control" (not like SVN). It's called distributed source control. And this fact is a feature not a bug. But it tells me you don't actually get how it works.
    There are things you don't want to push to the central place like experimental branches as example. But it is sure geared more towards open-source projects with many users all over the world working on it as for a large-ass "windows shop company" with managers having the need to control everything.

     



  • @blakeyrat said:

    ** You can't force it to upload when people commit, leading to this conversation in EVERY SINGLE STAND-UP MEETING: "hey did you finish that feature?" "Yeah it's committed" "But it's not on the server" "Oh crap I forgot". Every single day! Why can't you force it to upload the damned commits? Something that every other source control does by default?

    You have a stupid colleagues problem, not a Git problem.



  • OK. Time for me to make one post in an attempt to explain everything that's going on here. (Possible/likely conclusions: blakey disagreeing with me, everyone else disagreeing with me, all of the above.)

    git is a distributed version control system. The original versions were designed specifically for use versioning the Linux kernel, and the original implementation was quite inherently specific to POSIXy systems (this might, in retrospect, be considered a bad design decision given the uses that git was eventually put to). The original git client is a command-line program designed around the UNIX philosophy, with a few simple commands and methods of combining them. For instance, instead of the usual "pull" command that most DVCSes have, there's a separate "fetch" command to download the data, and a "merge" command to combine the downloaded data with another repository (such as your own). Both fetches and merges are conceptually useful commands in their own right; for instance, I often fetch other people's versions of a particular project to see what they're up to without merging, and then will do the merge at a later time once I've reviewed the code.

    Because git is a distributed version control system, each person can have one, or more, personal versions of the code to work on. This is very useful in large projects that have no coordinated central control, because it allows lots of different people to make their own experimental forks of something, and combine in each other's fixes, without any sort of centralised control or gatekeeping needed. git does not itself attempt to encourage any particular workflow, but rather lets you implement your own workflows on top of it. (So for instance, while it often makes sense to have git mirror your local repository on a public repository that's specific to you via repeated pushing on every commit, nothing enforces that.)

    In blakeyrat's case, he apparently has one central repository on Github (which is not the only git repository site, and in fact I refuse to use it for historical reasons I don't really want to go into here), that several people are using. One of the complaints is about the absence of a "commit without pushing" command. Now, because multiple people are using the repository, such a command actually doesn't make sense; if someone else had updated the repository, you might get a conflict when pushing (and in fact, by default, git will refuse to push if the other end's been updated and you haven't merged the update into your local repository). What you'd have to do if you had a conflict would be to fetch the other person's version, then merge it into your own copy (because of conflicts, this would involve some manual editing to merge the files together), and then push the result. If you were using a workflow where it did make sense (like the common one where everyone has their own public repository mirroring their private one, unfinished patches and all), the intended way to do this would be to write a shellscript that did the commit and the push (and the add if you felt like it) and use that for all their work on the repository.

    Now, the command-line version of git doesn't work so well on Windows (although some projects have made it work; msysgit is I think the best known), due to having been originally written at least partly in shell script. So various GUI clients have evolved for git as well. Many (probably most) of these completely miss the point and try to hide internals from the user that aren't designed to be hidden from the user. As a result, there might not be any meaningful way to do a fetch without a merge, or a commit and push at the same time. These clients also seem to, on average, have the same quality as pretty much all software ever (i.e. badly written and buggy). Github seems to offer their own github client thing, even though they're just a git repository and should just be using git.

    Also, the whole thing could have been avoided in the first place in that git does not, actually, require a name and email with a commit. It does have fields for name and email; part of the reason people make their repositories public is so that other people can contribute to them from anywhere, and when you're frequently fetching repostiories from elsewhere so that you can make local commits to them, having some reasonably unique identifiers like email addresses is useful. (In fact, if other people make a repository for something I'm interested in available but it isn't in a DVCS, I'll typically make a DVCS mirror of it, so I can make my own local changes to it and have everything update correctly without having to bother the actual makers of the project.) So when making a commit, git puts author information on it, and will complain if it doesn't know what to put. However, it doesn't mind leaving the name or email field blank, and I think it actually uses the username and hostname as the name and email by default (with hostnames, obviously, not being globally unique).

    tl;dr: blakeyrat's company is trying to use git for a purpose for which it wasn't designed, with a client for which it wasn't designed, on an operating system it wasn't designed for. And if it wasn't for the client being so buggy, it would actually almost work!



  • @beginner_ said:

    Because it's not like "very other source control" (not like SVN). It's called distributed source control. And this fact is a feature not a bug. But it tells me you don't actually get how it works.

    I do get how it works. What I don't get is how being "distributed" makes it impossible to force a sync after a commit. The guy working at GitHub pulled the same exact argument which makes no goddamned sense. Is there some kind of indoctrination camp you guys go to?

    Car analogy: I backed into a wall because my car has no side mirrors and no rear-view mirror. I want to add mirrors. Git supporters: "but your car has cruise control!" Me: "that's great, but I don't see what the fuck cruise control has to do with not having mirrors. I want mirrors."

    @beginner_ said:

    There are things you don't want to push to the central place like experimental branches as example.

    And why don't you want them on the server?

    @beginner_ said:

    But it is sure geared more towards open-source projects with many users all over the world working on it as for a large-ass "windows shop company" with managers having the need to control everything.

    Fine; but there's no reason it can't be used for our purpose except it's designed and maintained by dumbshits who refuse to add features that actual developers in the actual real world need. I'm not asking them to REMOVE anything from Git, I'm asking them to ADD a useful feature that every other source control package already has.


Log in to reply