Gitlab is an open source version management system using Ruby on Rails to implement a self-hosted Git project repository that can be accessed through a web interface for public or private projects. It features a similar feature to GitHub, with the ability to browse source code, manage defects, and annotate. You can manage the team's access to the warehouse, which makes it easy to browse through the submitted version and provide a file history library. Team members can communicate using the built-in simple chat program (Wall). It also provides a code snippet collection feature that makes it easy to implement code reuse, so you can find it later when you need it. Online Demo
Community Edition based on MIT license Open source completely free no users, collaboration and warehouse restrictions protect your source security management warehouse, users and access rights more features see here
Dependent components: Ruby 1.9.3+,mysql,git,redis, Sidekiq. The minimum configured CPU 1g,ram 1g+swap can support up to 100 users.
Installation
There are official installation kits and scripts to download the official Installation Guide. There is also a Community unofficial installation guide on GitHub.
But it is recommended Bitnami Download the package installation version Https://bitnami.com/stack/gitlab/installer, save a lot of time. They also offer wiki-related
To install this package in Ubuntu as a demo environment, switch to the root account and run it at the terminal:
./bitnami-gitlab-7.1.1-0-linux-x64-installer.run
Wizard appears, this time installation is a fool installed
By default the Gitlab CI is installed, then the port of Apache is configured, MySQL port, note if the default port 80, 3306 is occupied, need to be modified. I can't. This package installs standalone MySQL by default, and if you need to configure an existing MySQL database, manually install each component individually. When the installation is complete, the service starts.
Configure the OS to start automatically:
sudo update-rc.d gitlab defaults 21
Management
After the administrator account is logged in, there is a management area, such as:
Here you can manage user, project, group, log, message, Hooks, background job. The interface is clear and functional, and is not described in detail here.
Use 1. Service-side Boot Gitlab
[Email protected]:/opt/gitlab-7.1.1-0# ./ctlscript.sh start
140818 00:31:57 mysqld_safe Logging to '/opt/gitlab-7.1.1-0/mysql/data/mysqld.log '.
140818 00:31:57 Mysqld_safe starting Mysqld.bin daemon with databases From/opt/gitlab-7.1.1-0/mysql/data
/opt/gitlab-7.1.1-0/mysql/scripts/ctl.sh:mysql started at Port 3307
/opt/gitlab-7.1.1-0/redis/scripts/ctl.sh:redis started at Port 6379
/opt/gitlab-7.1.1-0/apps/gitlab/scripts/sidekiq.sh:gitlab_sidekiq started
Session terminated, terminating shell ... terminated.
/opt/gitlab-7.1.1-0/apps/gitlabci/scripts/sidekiq.sh:gitlabci_sidekiq started
/opt/gitlab-7.1.1-0/apps/gitlabci/scripts/runner.sh:gitlabci_runner started
Syntax OK
/OPT/GITLAB-7.1.1-0/APACHE2/SCRIPTS/CTL.SH:HTTPD started at Port 81
:/opt/gitlab-7.1.1-0 is the installation directory of Gitlab
You can also view the GUI Management console ./manager-linux-x64.run
The status of each component is listed above.
2. To create a GIT project initialization work
Our Apache webserver is installed between the 81 ports and accessed from the client:
http://192.168.169.129:81/
After logging in, you can create three levels of projects:
Increase the number of members participating in the project:
Log in to Gitlab http://10.1.98.251 and fill in the profile with your ssh-key,
Notepad open C:\Users\Administrator\.ssh \id_rsa.pub content, copy to the following key
To create a new Git project, initialize the first commit:
git global setup (git globals):
git config--global user.name "testman" git config--global user.email "[Email protected]"
Create Repository (Creating a warehouse)
mkdir COMMON-UTILCD common-utilgit inittouch readmegit add readmegit commit-m ' first commit ' git remote add origin [email Protected]:d Evteam/common-util.gitgit push-u Origin Master
For a git project that already exists:
CD Existing_git_repo git remote add Origin [email protected]:d evteam/common-util.git git push-u Origin master
Enter the local git shell, generate your own ssh-key, contact three return
SSH-KEYGEN-T RSA
Log in to Gitlab and fill in the profile with your ssh-key,
Notepad opens the C:\Users\Administrator\.ssh \id_rsa.pub content, copy to the following key.
3. Log in with the relevant user name to see Dashborad:
Show Project News:
Project Commit Details:
4. Do the client with Visual Studio 2013.
Since the previous project has been built, in Visual Studio 2013 We modified the file, right-click to commit
Then in the Select interface, select Commit, fill in the information for this submission, or commit and push
After submission, prompt for commit cd900236 to be created locally, sync to share to server
Then sync, click Push to the server, you will be prompted to enter the password for the first time:
The result is: successfully pushed 1commit to Origin/master branch
Then we submit the code to the Gitlab, open the page into the relevant project, you can see the commit
GitLab CI
After logging in with the Gitlab Administrator account:
Provides functionality based on continuous integration, with access to the API.
The above is based on the Gitlab 7.1.1 version, because of time changes, the UI may change later. And because space is limited, here is a brief introduction today. For more information, refer to:
GitLab Team Blog
Msdn:using Visual Studio with Git
Articles you may be interested in:
Coinpunk Project Introduction
Smart Mobile Guide Solution Brief
Http://www.cnblogs.com/wintersun/p/3930900.html
Gitlab Version Management