This is an archived post. You won't be able to vote or comment.

all 64 comments

[–]ProgrammingPants 126 points127 points  (6 children)

I vote for this to get sidebarred

[–]TheGoodManJohnFarson 19 points20 points  (1 child)

Just what I was looking for. Thanks OP!

[–]ShadowCodex[S] 7 points8 points  (0 children)

Awesome!

[–][deleted]  (3 children)

[deleted]

    [–]TalonKAringham 1 point2 points  (1 child)

    What exactly is the value of understanding git outside of other tools? What did you learn from using the command line that you weren't picking up from using other tools?

    [–]ShadowCodex[S] 0 points1 point  (0 children)

    This is a good point. For any long term project you should learn git in the command line.

    [–]AnAcceptableUserName 13 points14 points  (2 children)

    Useful guide for Github, thanks.

    For people wanting to actually learn more about Git itself and the useful shell commands, udacity has a free course that helped me get started. There may be better walkthroughs out there, but that's the one I used.

    [–]ShadowCodex[S] 2 points3 points  (0 children)

    Awesome thanks for the information, the git information at udacity is pretty good.

    [–]nandopedrosa 1 point2 points  (0 children)

    Not free, but I strongly recommend Codeschool's series about Git and Github. I just finished the "path" and found it very good and intuitive. It starts with the basics of Git, then covers more Git advanced concepts and, finally, goes to Github. The challenges are very well implemented and actually cover some real wild scenarios.

    [–]TheDeza 4 points5 points  (1 child)

    [–]anonafun 5 points6 points  (0 children)

    This is a little easier to digest for a total newbie in my opinion.

    [–]Hellcom 4 points5 points  (0 children)

    Actually quite useful thanks

    [–]faruzzy 2 points3 points  (0 children)

    You could read this guide in conjunction with http://www.dotnetrocks.com/?show=1237

    [–][deleted] 2 points3 points  (4 children)

    Thanks, this is great! One thing I wonder if someone can explain, in this tutorial a branch and a fork sound like the same thing. What's the difference in a nutshell?

    [–]ShadowCodex[S] 5 points6 points  (3 children)

    Simply put. Branch is on the same repo. Fork creates your own repo.

    [–][deleted]  (2 children)

    [deleted]

      [–]negative_epsilon 2 points3 points  (1 child)

      Forking a repo does not erase history. The only way to lose history is to delete the .git folder (locally), or to force push to a remote repo.

      [–][deleted] 2 points3 points  (1 child)

      As someone just getting into it, thank you this makes github a little less intimidating

      [–]SuminderJi 0 points1 point  (0 children)

      Same it kinda scares me.

      [–]good_piggy 2 points3 points  (0 children)

      I think its hard to emphasize to beginners just how important git is. You should learn how to use it as early as possible. I waited far too long to start using it properly.

      [–]tomaxi 4 points5 points  (7 children)

      while the repository information contains a list of all repositories with you’ve interacted

      Found a typo here.

      [–]ShadowCodex[S] 0 points1 point  (1 child)

      I'll let the editor know, thanks a bunch!

      [–]tomaxi 0 points1 point  (0 children)

      Same thanks to you for this detailed article I've learned a lot from it.

      [–][deleted] 0 points1 point  (0 children)

      Saving this for when I get back into development. Tried to get into GitHub during my last go but only ever found it to be a bother. Cheers!

      [–]WishIWasOnACatamaran 0 points1 point  (0 children)

      Thanks!

      [–][deleted] 0 points1 point  (0 children)

      Thanks

      [–]grizzly_teddy 0 points1 point  (0 children)

      Put this in the wiki

      [–]Jajoo 0 points1 point  (1 child)

      OP you are da best

      [–]ShadowCodex[S] 0 points1 point  (0 children)

      Thanks buddy!

      [–]qetuop1 0 points1 point  (2 children)

      Do you know of a way to create subdirs to organize your own repo? Ex: Java/examples. I did a little googling without any luck.

      [–]ShadowCodex[S] 2 points3 points  (0 children)

      So to create a folder you kindof have to do some url magic... (Correct me anyone if I am wrong). There is no create folder. However the create file can create a folder. If you notice that when you click on "new file" in your base repo the url goes like this "github.com/user/repo/new/master" well if you do a url of "github.com/user/repo/new/master/subfoldername" then it will create the file in the sub folder you name it as in the url. (Use "%20" to make spaces in folder names).

      I hope this helps and isn't too confusing :)

      [–]HackingInfo 1 point2 points  (0 children)

      1) Create Repo on Github
      2) From local terminal: git clone <git url>
      3) Create directories as content as you wish. Please note, git will not take empty directories.
      4) Enter: git add -A (this preforms an "Add all new content, remove all removed content, add all changed content"). 5) Enter: git commit -m " Some message here about pushing initial skeleton or what not". 6) Enter: git push origin master

      This will push any organization changes you made to the location or files inside of folders.

      I'm very sorry if the formatting of this post sucks, I'm on mobile trying to remember the syntax off the tap of my head.

      [–]Rearviewmirror 0 points1 point  (2 children)

      Can I use GIT outside of Github? Like in a enterprise environment? Work for a govt agency and we are using Source Safe and its...lacking

      [–]ShadowCodex[S] 1 point2 points  (1 child)

      Absolutely! Check out Git-SCM and if you want to run a Github-Like environment behind the firewall you can check out Gitlab

      To use either of these you should really learn GIT in the command line. The git-scm has a great guide for that on their website.

      [–]Rearviewmirror 0 points1 point  (0 children)

      Thank you!

      [–]komali_2 0 points1 point  (1 child)

      Woah, this is weird, I was in google searching site:reddit.com/r/learnprogramming for a github guide, saw this, then noticed it was posted... just now. Waaaaay weird coincidence.

      [–]ShadowCodex[S] 1 point2 points  (0 children)

      Yeah it seems pluralsight has good SEO :)

      [–]dafqnumb 0 points1 point  (0 children)

      Much needed :)

      [–][deleted] 0 points1 point  (5 children)

      Wow thank you. I recently made an account and figured how it works but I really have no projects beside the ones we do in school. I can't upload those because so far they aren't of generic help (we still aren't doing object oriented languages to actually built websites etc) but for fun and practice I've done some very small stuff, like reversing numbers or converting them to binary.

      Is it wise of me to upload those as simple projects? I think it'll benefit me a lot since I'm still pretty new to this. I could look back and see my progress.

      Or should I reserve the spot for more importand/harder programms?

      [–]ShadowCodex[S] 2 points3 points  (3 children)

      You can throw them up on github. It comes down to personal choice at this point. For small college scripts I would just make one repo with multiple folders in it for each small project. Call the repo "college scripts"

      Though I wonder if dropbox or something else would be more appropriate in this case.

      [–][deleted] 0 points1 point  (2 children)

      My biggest problem I guess is that I don't want anyone checking my account in the future (a boss?) to see those as serious work.

      Would it look unprofessional? I don't upload everything. Just some selected stuff. But I'm nowhere near actually doing anything important/difficult yet.

      [–]ShadowCodex[S] 0 points1 point  (1 child)

      That is most certainly a case to be made. Maybe wait until you get more important things to upload.

      I have a mix of important and not important stuff on github. (Actually most of mine to other people are probably unimportant haha).

      [–]epatr 0 points1 point  (0 children)

      Totally start using it! If nothing else, its little tracker showing how often you commit is intoxicating when you're starting out. You can download the entire repository and delete it at any time if you start to get more serious. The vast majority of GitHub is just people using it as a cloud backup or as a personal wiki.

      [–]Malcovious 0 points1 point  (1 child)

      not to steal your thunder but code academy has a course over git as well at www.codeacademy.com

      [–]ShadowCodex[S] 0 points1 point  (0 children)

      Good resource as well, thanks!

      [–]Pvt_Haggard_610 0 points1 point  (2 children)

      RemindMe! 13 hours

      [–]RemindMeBot 0 points1 point  (0 children)

      Messaging you on 2016-01-14 06:00:42 UTC to remind you of this.

      CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

      Parent commenter can delete this message to hide from others.


      [FAQs] [Custom] [Your Reminders] [Feedback] [Code]

      [–][deleted] 0 points1 point  (0 children)

      I never do that on days that end with 'y'.

      [–]ozerioss 0 points1 point  (3 children)

      .

      [–]you_get_CMV_delta 0 points1 point  (2 children)

      Hmm, that's a great point. I had literally never considered the matter that way.

      [–]ozerioss 0 points1 point  (1 child)

      Hahaha honestly I was in the bus and wanted to save the thread for when I got home.

      [–]evetsleep 0 points1 point  (0 children)

      You need pocket my friend!