Git is a distributed source code control system. It keeps track of modifications added to the source code, and it has functions such as version control function which restores the code of any given time, merge function which incorporates modifications added to the source code by other developers to your own source code, clone functions which copies the source code released by other developers to your working environment, and many other functions that are useful to software development.
Git is a source code control system for development, created by Linus Torvalds who developed Linux. They have a huge amount of source codes, and in order to make itself available to the large-scale software development like Linux where many developers are involved, it is designed to be speedy in operation, easy to coordinate cooperation among developers, and easy in doing development.
At Git, in order to help development with multiple developers involved go smoothly, they adopt architecture which is called “distributed type”. In a distributed source code control system, repository (local repository) gets created within the directory where developers do their work, and synchronizes with other repository as required. Because a repository is provided for each developer/machine, it allows developer to work on the development with minimum interference from other developers.
Changes that are added to the source code by a developer can be sent to other repository (remote repository) through a structure called “push” or “pull”. Push is used to send incremental information between remote repository and local repository to the remote repository, and by using this, you can synchronize between the remote repository and the local repository. Pull is used to bring incremental information between remote repository and local repository. You can use this when you want to apply the changes added to the source code by other developers to the source code which you’re working on.
Also, creating local repository in order to take out a file from a certain remote repository and add changes to the file and the directory in your own space is called clone. The most general development style is that when you want to add a new change to the source code made by other developer, you use clone to obtain the file, then commit the change and push or pull to send and receive the change.
At OSDN, we provide the following functions to support development which uses Git.
All these functions can be used free of charge once you have an OSDN account. There are no restrictions to the size and number of repositories you can create.
At Development support system PersonalForge, you can use Chamber which provides functions such as personal repository at Git, file up loader, and Wiki. You can make infinite Chambers and upload any files to release.
At PersonalForge, there’s a repository browser originally developed by OSDN. A list of files of any branch, a history of commits, and a list of branches and tags can all be browsed on web.
It is also provided with a function that allows forking from other Git repository, therefore you can create a new repository by forking not only from repositories within OSDN, but also from any released Git repository.
Project function designed for open source software development provides source code control systems. Source code control systems such as Git, Subversin, Mercurial, Bazaar, CVS are available. With Git, Subversion, and Mercurial, we also provide repository browser which we developed originally.
There are also other functions designed for projects, such as Wiki and file release (up loader), ticket, news, forum (bulletin board), and mailing list.
Each development project is provided with a free of charge shell server which can be used for testing softwares and structuring Web sites. You can log into the shell server with SSH or by using MySQL data base. Shell server is installed with commands such as git, svn, and hg, and by using them you can copy files to the shell server.