Gitlab User Guide
Installation
msysGit is a windows version of Git client. Download this installation package and install it: https://github.com/msysgit/msysgit/releases/download/Git-1.9.5-preview20141217/Git-1.9.5-preview20141217.exe
use default configuration is OK. Just click "Next" button all the way to the end.
Configuration
Set user name and email
Open Git Bash from desktop (or any folder) by right click:


config your user name and email: (They should be the same with your git profile settings)
git config --global user.name "Shishang, Yilin"
git config --global user.email "shishangyilin@cienet.com.cn"

Add SSH keys
Open Git Gui from start menu:

Click Show SSH Key:

There is no SSH key currently. Click Generate Key:

Git will promt to request you set a passphrase for your SSH key, but it is not necessary. Just click OK to leave it empty:


Select the whole SSH key text and click Copy To Clipboard:

Go to Gitlab Profile settings > SSH keys > Add SSH Key:

Paste your key here:

Click the "Title" input box, the title will be generated automatically:

Click Add Key and it is done:

Last Step: Test your SSH link to the git server to verify your key has been added correctly, open Git Bash and input:
ssh git@server_ip_address
Input yes and It's OK When you see Welcome to Gitlab, ...

Repository
Create New Repository
To be continued...
Clone Existing Repository
You can clone the existing project repository to your local machine, so you can work on it.
First you need to get the source location like below project "first":

Create a new folder on your computer and open Git Bash:

Clone the source repository:
git clone git@54.65.75.141:shishangyilin/first.git

You can see the downloading information and wait until the clone is done:

After the clone is done, open Git GUI and select Open Existing Repository:

Browse to the repository folder that git clone created (It's in the folder which you created):

Click Open And this is your project workspace, you can commit/checkout/merge changes here:

Git Operation
Pull
Git Pull command is used to update your local repository with the latest version of source repository, it will also merge your local changes with the fetched source repository changes automatically.
First, create a quick access tool in Git GUI:

The command is git pull:

Then you can simply click the git pull tool to update the repository:

You can see the details like how many changes updated in the message window:

Push
Git Push is used to commit your changes to source repository. Before you start your change, it's better if you pull the changes from source repository first. After you finish your code change, open Git GUI and press F5 to refresh the unstaged changes:

You can see the files list of your change on the left, and click on one file you can see the code diff on the right. Here you can examine your change and when it's ready, select the file you need to commit and click Stage To Commit or press Ctrl + T:

Then the file will be moved from the red zone Unstaged Changes to the green zone Staged Changes (Will Commit). Note: Only the staged changes will be commited. In the Commit Message, input your comments on this commit. You can refer to the issue related to this commit with a #1 (the issue number) and the issue will be connected and closed by the commit. Click Commit when you are done:

After commit, you need to push the changes to the source repository, click Push and confirm it:

You can see the push details if it succeeded:

In the above example, we refered the #1 issue so the issue has been connected to this commit and closed:

Merge
When your change conflicts with the source repository, Git pull or push will fail:

If you failed on pull and your changes has not been commited, commit them:

If you has commited your changes and failed on push, click Remote > Fetch from > origin:

Then click Merge > Local Merge or press Ctrl + M:

Select the branch you want to merge into and click Merge:

If there is no conflicts, the merge will complete automatically.
Then you can skip the following steps on conflict-resolving, just commit the merge changes and push to source repository according to the instructions after conflict-resolving.
If there are conflicts, the merge will fail:

In Git GUI you can see the conflict file details. HEAD means your current branch status, origin/master is the source repository branch which you are merging into:

Edit the conflict file, remove the auto-generated notes and merge the changes by editing:

Commit the merge changes:

Push to source repository:

Success!

In the project network view, you can see the merge on two parallel commits:

Gitlab User Guide的更多相关文章
- CentOS安装gitLab服务器
首先利用gitlab-install-el6.sh安装,比较简单: (出处:http://www.linuxidc.com/Linux/2013-06/85754.htm) 1:如果有条件,提供一台全 ...
- Gitlab的搭建
从网上看了一大堆的资料,最终选定按照github上的文档来搭建,虽然本人英文不好,就这样看着 这个博客弯曲完全是拷贝过来的,只为了做个笔记 原文地址:https://github.com/gitlab ...
- 搭建 Linux 下 GitLab 服务器
转自:http://blog.csdn.net/passion_wu128/article/details/8216086 目录: 平台需求 硬件需求 本安装指南已于 DebianUbuntu 测试通 ...
- 【转】使用git、git-flow与gitlab工作
转自:http://www.tuicool.com/articles/BZJRj2 使用git.git-flow与gitlab工作 时间 2013-11-02 00:40:39 Axb的自我修养 原 ...
- docker gitlab
Alternatively, you can manually launch the gitlab container and the supporting postgresql and redis ...
- GitLab一键式安装bitnami
https://bitnami.com/stack/gitlab/installer https://bitnami.com/redirect/to/96764/bitnami-gitlab-8.5. ...
- 搭建 Linux 下 GitLab 服务器(转)
这两天因为项目需求需要搭建一个GitLab服务器,遇到了很多问题,参考了很多网络资料,终于搭建成功,在此把这个过程记录一下,利人利己. 一.最终目的 1,在Linux下创建GitLab服务器,客户端能 ...
- ubuntu 16.04.2 源码安装gitlab并且利用runner持续集成
参考原档:https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/installation.md#using-https 本章只 ...
- GitLab Development Kit 环境搭建
在公司内网服务器上面搭建gdk环境,踩了很多坑,历时四五天(中间涉及申请开通固定外网),整理如下: 总览: 操作系统:redhat 6.3 参考文档:https://gitlab.com/gitlab ...
随机推荐
- 【旧文章搬运】加载PE文件时IAT的填充时机
原文发表于百度空间,2011-06-20========================================================================== 大致过程如 ...
- D - Bear and Finding Criminals
Description There are n cities in Bearland, numbered 1 through n. Cities are arranged in one long ro ...
- 3-C++程序的结构1.1
数据的共享和保护机制是C++的重要特性之一. 1.标识符的作用域与可见性 作用域讨论的是标识符的有效范围,可见性是讨论标识符是否可以被引用. a.作用域 作用域是一个标识符在程序正文中有效的区域.C+ ...
- TypeScript完全解读(26课时)_20.声明文件
首先学习识别已有的js库的类型 识别已有的js库的类型 UMD既可以作为全局库使用,也可以作为模块使用 先在着手来编写一个全局的库 新建文件 接收一个title,改变页面title的值 这里用到 &a ...
- PHP文件操作的经典案例
<?php /* 遍历目录函数,只读取目录的最外层的内容 */ function readDirectory($path){ $handle = opendir($path); while(($ ...
- F#周报2019年第20期
新闻 2019年理事会活动 "实用的F#挑战"意见截止日期接近,不要忘记提交博客文章或者其它作品 接口中的默认实现 .NET Core 3.0里的性能增强 使用Try .NET创建 ...
- yarn 基础
创建: 2019/04/06 安装 mac brew install yarn 升级 brew upgrade yarn 确认是否成功 yarn --version 初始化项目 yarn ini ...
- gSoap传输二进制数据
最近使用gSoap传输二进制数据,遇到问题.gSoap不能一次传输二进制数据.所以使用分包传送. struct xsd_DwgInfo { ];//分包大小 int m_nReadSize;// bo ...
- [Xcode 实际操作]九、实用进阶-(12)从系统相册中读取图片
目录:[Swift]Xcode实际操作 本文将演示从系统相册中读取图片. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //添加两个协议 ...
- MySQL习题1 一对多实例 产品和分类
/* 需求:建立产品和分类表 1.查询每种分类的产品数量,没有产品的分类也要统计.(cname,quantity) 2.根据分类名称查询分类中的所有产品 */ -- ----------------- ...