Page 1 of 1

git resources

Posted: Tue Mar 11, 2014 7:50 pm
by mwieder
Since I think some basic grounding in git would be useful to anyone attempting to look at or work with the engine files, I'm posting some hopefully useful links here. Feel free to add others.

http://try.github.io/levels/1/challenges/1

http://stackoverflow.com/questions/3159 ... ical-guide

Nice easy-to-read introduction to how git works. Note that this is
*not* an introduction to what version control is, but it takes you on
a nice tour of "git makes more sense when you understand [...]"

Homeomorphic endofunctors, lsd and chainsaws, tinkertoys...

http://think-like-a-git.net/sections/the-end.html

Re: git resources

Posted: Tue May 06, 2014 5:48 pm
by mwieder
(talking to myself here, but if you have some time to spare, illustrating how git works by building a repository from tinkertoys is brilliant...)

http://think-like-a-git.net/sections/gi ... nd-up.html ... the actual video is here:

http://www.youtube.com/watch?v=1ffBJ4sVUb4

Re: git resources

Posted: Tue May 06, 2014 6:21 pm
by DarScott
Thanks!

You are not just talking to yourself.

I will look at these as I assess what I might be getting into.

Re: git resources

Posted: Tue May 27, 2014 12:32 pm
by DarScott
I've been learning about git. Should I be focusing on github?

Re: git resources

Posted: Tue May 27, 2014 7:17 pm
by mwieder
Hmmm... in what way?

I mean, the answer is probably yes, but the only github-related issue that comes to mind is dealing with pull requests And PRs are technically a github thing and not a git thing. Did you have something else in mind?

Re: git resources

Posted: Tue May 27, 2014 7:23 pm
by DarScott
That is probably it. I saw references to "pull request" and I was reading a request for permission to get pull or something.

If I use the gitHub GUI, do I need git?

I saw something called Tower for git, which might be handy when one is focusing on code and the git commands don't come to mind. Or is that sissy or otherwise counterproductive. It might no help for me to ask for advice and you say "git such and such" and I wonder how to do that with a GUI.

Re: git resources

Posted: Tue May 27, 2014 9:59 pm
by mwieder
That is probably it. I saw references to "pull request" and I was reading a request for permission to get pull or something.
How a pull request works:

When you've got code committed and ready for the world you can push it to your github repository (the fork you made from the runrev original). Then when you think it's ready to be merged into the global runrev repository you want to alert the runrev team to take a look at it.

That's where a pull request comes into play ("I'm requesting you to pull this code into your repository"). Generally you log onto github, select the branch with the code to merge, and create a pull request against the master branch. That will create a diff file with the changes you have made and allow someone on the team (probably runrevmark) to evaluate it, tear it to pieces, make some acerbic comments, and force you to make changes before it can be accepted.
If I use the gitHub GUI, do I need git?
Don't know. Not sure what a github gui is.
I saw something called Tower for git, which might be handy when one is focusing on code and the git commands don't come to mind. Or is that sissy or otherwise counterproductive. It might no help for me to ask for advice and you say "git such and such" and I wonder how to do that with a GUI.
I'm not familiar with Tower. I use the git integration in Rubymine, and it's good up to a point, and then I resort to a commandline. I use gitk because it's part of the git distribution, and it does a good job of diffing the changes and showing a history of commits and merges. But it's got its limitations as well. IMO nothing beats a commandline, although you'll probably want to print out one of the many git cheat sheets on line to help you remember command syntax.

Re: git resources

Posted: Tue May 27, 2014 10:36 pm
by DarScott
When I go to github.com (redirected from github.org) I'm invited to download github and there is a pretty picture of a GUI screen. I don't know how complete that is.

I appreciate the advice. I'm going to be working at this a little each day. Maybe I should make a small change to go through the motions.

Re: git resources

Posted: Wed May 28, 2014 3:11 am
by mwieder
OK - I see the gui thing on github's homepage. It's been a while since I've seen the homepage - I usually just go directly to my repositories. I still can't comment on it, not having tried it. Maybe somebody else will chime in.

My main rule of thumb about git is: Make branches. Make lots of branches. I make a new branch if I'm going to try an experiment. I make a new branch if I'm going to try fixing something. I make a new branch if I'm about to update a library. Etc. There's no downside to making branches. If something doesn't work out, you just delete the branch. If it does, then you merge it into the mainline code. Or not. You can just keep it as its own branch.

Re: git resources

Posted: Wed May 28, 2014 8:52 am
by AndyP
Thanks for the resources, I really liked http://www.youtube.com/watch?v=1ffBJ4sVUb4

I started using git not too long ago and downloaded the windows gui from github https://windows.github.com/ to try but I found it very cumbersome and not very intuitive. So I decided to dive into the command line and have to say this is the way to go.
You only really need to learn about 8 commands and when they have been learnt you will find the command line quicker and it just seems to make sense!

Re: git resources

Posted: Wed May 28, 2014 11:16 pm
by mwieder
Andy-

Yeah, I thought the tinkertoy video was a great way to explain things. When you get down to it, most git commands are just about moving labels around.

Re: git resources

Posted: Tue Jun 17, 2014 12:49 am
by mwieder
Github icons, MIT-licensed.

http://octicons.github.com/

Re: git resources

Posted: Wed Jun 18, 2014 6:54 pm
by mwieder
10 Tips to Push Your Git Skills to the Next Level

http://www.sitepoint.com/10-tips-git-next-level/