Start learning with our library of video tutorials taught by experts. Get started
Viewed by members. in countries. members currently watching.
This course is a gateway to learning software version control (SVC), process management, and collaboration techniques. Author Michael Lehman reviews the history of version control and demonstrates the fundamental concepts: check-in/checkout, forking, merging, commits, and distribution. The choice of an SVC system is critical to effectively managing and versioning the assets in a software development project (from source code, images, and compiled binaries to installation packages), so the course also surveys the solutions available. Michael examines Git, Perforce, Subversion, Mercurial, and Microsoft Team Foundation Server (TFS) in particular, describing the appropriate use, features, benefits, and optimal group size for each one.
The latest version of Git that you can get from git-scm.com has built-in GUI tools and shell integration. As you can see here, we've got something we can create, Git and add all new files. There is a specific Git Commit tool, a Git History tool, we can fire the whole thing up by calling up for the Git GUI, and it knows which repository you can see up here in the title bar, it's using because we right-clicked on that particular folder. So you can see there aren't any Unstage Changes or Stage Changes in here.
We come up to Repository and say Visualize master's History, and there's our changes. That's our Initial check in. You can see down here at the bottom, there is our initial text. We go up one. Now you can see it shows the dif where we took out my novel and put in website. Here's what we added, the feature code to our branch, and up here is where we added node. And you can see by the fact that it now has this b1 and master at the same spot on the top line there, those two branches have been merged together.
In addition to doing that, you can browse master's Files, or you can browse files in various different branches if you've been asked for Database Statistics. For example, here we can see these are statistics that have to do with the way in which Git manages things, and it basically never deletes anything. So over time, you start using this, for 6 months or a year, you may end up with a lot of extra files that are no longer being tracked by Git that are still in that hidden.git directory. You can use this tool to commit it and compress that and get rid of the unnecessary files that you are still carrying around if you're backing up the entire directory.
And that's it for Git GUI and Git shell integration. I think you'll find that Git is very, very easy to use, very lightweight, and something that I highly recommend. It's also being used very, very widely in the open-source community, especially with a website called github, g-i-t-h-u-b.com, which has free hosting for open-source projects, and I also highly recommend github for hosting private repositories for a very reasonable price that allows you to then push the changes from your local repository to the cloud.
And if you remember my story from the beginning of the course, I was talking about restoring my hard disk, it was on github where my files were located in the cloud, and it was very easy. All I did was went to github and did a pull down form the github cloud version, and my local repository was completely restored. And finally, as we did with Subversion, we're going to zip the entire finished copy of the Git repository here we have in directory g1 and put it in the exercise files for this chapter.
There are currently no FAQs about Fundamentals of Software Version Control.
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.