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:

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:

最新文章

  1. 关于PHP扩展开发(收藏)
  2. .NET WEB程序员需要掌握的技能
  3. 《Entity Framework 6 Recipes》翻译系列 (1) -----第一章 开始使用实体框架之历史和框架简述
  4. LeetCode-66-Plus One
  5. YII 伪静态 IIS7 方法 web.config
  6. Hyper-v虚拟机文件VHDX与VHD的格式转换
  7. HDU 4320 Arcane Numbers 1 (质因子分解)
  8. spring mvc 解决后台传递值乱码问题
  9. BZOJ 1475 & 1324 && 建图最小割
  10. PAT 解题报告 1050. String Subtraction (20)
  11. 数学+dp HDOJ 5317 RGCDQ
  12. [Client]动检参数讨论与ONVIF
  13. React react-ui-tree的使用
  14. html 字符串互转DOM
  15. 区间的关系的计数 HDU 4638 离线+树状数组
  16. C#中static void Main(string[] args) 参数详解
  17. <c:forEach 的常用整理
  18. Contest2195 - 2019-4-25 高一noip基础知识点 测试8 题解版
  19. 25)django-form使用
  20. dubbo 中文官网

热门文章

  1. sybase SQL记录
  2. 性能测试之Jmeter学习(四)
  3. C - Present
  4. Centos Mininal最小安装
  5. [工作笔记]JDK版本不同导致的SSL异常
  6. PHP实用小程序(七)
  7. WPF后台通知前台事件(ViewModelBase记录)
  8. T^TOJ - 2360 - Home_W的超级数学题 - 莫比乌斯反演 - 质因数分解
  9. 一款基于Bootstrap的js分页插件bootstrap-paginator使用实例
  10. 2012 Noip提高组 Day2