Do I need a github to have a locale source control?
I have downloaded Git and SmartGit and it seems to run well locally. We are several members in the team and we want the source in house. Currently we use Starteam but I want to move away to a more modern rcs system like Git. Is there a simple guide how to synchronize code between team members ? I assume there must be a code repositionary that “decide” what version is right.
- LF Versus CRLF Line Endings in Windows Batch Files
- Git clone / pull continually freezing at “Store key in cache?”
- How to re-download whole repository in Git
- Update file on git add with clean filter and sed
- Which git.exe should I reference?
- Adding Git to PATH Variable - Can't find GitHub under AppData/Local
4 Solutions collect form web for “Do I need a github to have a locale source control?”
Since you have concerns of using git on a windows server (as indicated in your comment to Greg’s answer): I’m using a bare git repo on a windows server and work on a windows workstation (msysgit, tortoisegit, access via
//hostname/share/to/bare.git) and several linux VMs (access via
ssh://hostname/path/to/bare.git) without any issues regarding git except one minor problem:
msysgit 18.104.22.168 (running on the windows workstation) lacks one perl module (can’t remember) that is needed for
git svn (compressing old stuff). If you’re not planning to use git together with svn, that doesn’t matter to you.
To answer your question: I think, using an inhouse (bare) git repo that can be accessed by your team should be enough. Give it a try: set up the bare repo (see this post), adjust the directory permissions for your team and you’re done:
Fire up a git console on one client machine and do
git clone //hostname.domain/share/to/bare.git D:/workdir
That should be fine for you. But the tradeoff of having the sources on a local system is that you have to administer the system.
However, if you want to use the features of github one day, take your repo and push it to github.
There are many ways to set up a shared Git repository for your team. Using Github is one of these ways, but costs some money (for a private repository; public are free).
Normally what you would is set up a Git “bare repository” that you and your coworkers can access. The Git book has a good section on Setting Up a Private Repository.
You do not need a github repository in order to share among team members, but it certainly makes life simple. On github, you can designate that a repository is “private” and thus control sharing with other github members. I believe you may have to pony up a couple of bucks a month for this capability.
You can also do clones/pulls/etc from a team member’s machine directly.
You can also use specialised git server like Gitosis or https://github.com/sitaramc/gitolite (if you need fine grained access control)