GitFlow教程

这份教程是博主学到的git基础,仅适合小团队使用,仅供参考

配置Git

配置github上面的账号,首先需要自己在git上注册一个账号

git config --global user.name "Your Name in Github"
git config --global user.email "email@domain.com"

创建仓库

cd your_project_dir
git init

克隆仓库

git clone address

address是在github上面显示的克隆地址

添加管理

git status # 随时查看管理的文件状态
git diff file.txt # 查看file.txt这份文件相对于上一次的提交修改了什么
git add file.txt # 确认这份文件的修改
git add . # 可以一次性添加全部文件的修改
git status # 查看状态更新
git commit -m "Modify file.txt" # 提交一版更新

推送到Github

git push origin master # 将当前分支推送到远程仓库上的master分支

如果没有配置过ssh,需要输入用户账号和密码

同步Github

git pull origin master # 从远程仓库同步代码回来

分支管理

策略一:

多人协同工作,一个master分支,每一个人一个子分支,完成的子分支merge到master中

git branch # 查看当前分支
git checkout -b peopleA # 创建peopleA分支并切换到该分支
git checkout peopleA # 切换到peopleA分支

策略二:

单人开发,一个master分支,一个dev分支,当通过的代码merge到master分支中,dev分支随意处理

git branch # 查看当前分支
git checkout -b dev # 创建dev分支并切换到该分支
git checkout dev # 切换到dev分支

合并分支

git checkout master # 切换回master分支
git merge --no-diff peopleA # 适合策略一,保留分支历史
git merge dev # 适合策略二,不保留分支历史

冲突处理

当merge和pull的时候都会有可能遇到冲突,执行相应的命令会有提示。

这时候使用开发工具查看代码中冲突的部分(下面类似的格式)解决冲突。

======

>>>>>>abc

<<<<<<

执行git commit得到解决冲突后的一个提交

解决冲突最后的办法:

回退到稳定的版本,手动合并文件,提交版本,强制覆盖推送

git log --pretty=oneline # 查看提交日志的commit值
git reset --hard 343n9n # 输入的是需要回退的版本的commit值
# 手动合并文件
git commit -m "a new commit" # 提交新版本
git push origin master --force # 强制覆盖推送

后记

原则上足够小型开发使用了,有问题可以在评论区说明。

GitFlow教程的更多相关文章

  1. gitflow以及git

    git大概只会用常用的那几个命令,自己用的最多的也只是add commit push pull之类的,然后那天电话面试问我版本回退怎么办我都忘记了. 然后又看了看教程,此时想起来做项目的时候师兄说的g ...

  2. 【转】使用git、git-flow与gitlab工作

    转自:http://www.tuicool.com/articles/BZJRj2 使用git.git-flow与gitlab工作 时间 2013-11-02 00:40:39  Axb的自我修养 原 ...

  3. 【Github教程】史上最全github用法:github入门到精通

    原文 http://www.eoeandroid.com/thread-274556-1-1.html [初识Github] 首先让我们大家一起喊一句"Hello Github". ...

  4. 【转】Github入门教程

    原文 http://www.eoeandroid.com/thread-274556-1-1.html [初识Github] 首先让我们大家一起喊一句“Hello Github”.YEAH!就是这样. ...

  5. 使用git-flow来帮助管理git代码

    对git不熟悉的我,经常把git提交搞得很乱,导致在master上有许多无用的commit,最终决定好好地看一下git的使用教程,却不小心发现了还有一个git-flow的工具可以帮助我管理好git项目 ...

  6. 【Github教程】:github入门到精通

    [初识Github] 首先让我们大家一起喊一句"Hello Github".YEAH!就是这样. 原文 http://www.eoeandroid.com/thread-27455 ...

  7. 文科妹学 GitHub 简易教程

      #什么是 Github ?必须要放这张图了!!!<img src="https://pic4.zhimg.com/7c9d3403bf922b1663f56975869c829b_ ...

  8. 【转载】【收藏】Github上免费的编程教程【作者Victor Felder】

    原链接:https://github.com/EbookFoundation/free-programming-books/blob/master/free-programming-books-zh. ...

  9. 【Github教程】史上最全github使用方法:github入门到精通

    原文 http://www.eoeandroid.com/thread-274556-1-1.html git pull 命令 git pull <remote> <branch&g ...

随机推荐

  1. leetcode279. Perfect Squares

    learn from DP class Solution { public: int numSquares(int n) { if(n<=0)return 0; int * dp = new i ...

  2. 配置Android环境遇到的问题及解决办法

    配置Android环境遇到的问题及解决办法: 1 环境安装地址 http://pan.baidu.com/s/1jGzNzyI 2 其他: 2.1 安装 2.1.1 安装JDK,JRE 成功安装之后, ...

  3. JS常用的设计模式(13)——组合模式

    组合模式又叫部分-整体模式,它将所有对象组合成树形结构.使得用户只需要操作最上层的接口,就可以对所有成员做相同的操作. 一个再好不过的例子就是jquery对象,大家都知道1个jquery对象其实是一组 ...

  4. solr5.5教程-tomcat布署(2)

    tomcat 布署成功后,接下来就是使用了. 首先要创建一个core. 1.选择右侧菜单, Core Admin -> Add Core. 注意:name自己定义,instanceDir要填写上 ...

  5. Windows 2003 + IIS6.0 相关 401.1 或 401.2 等问题解决

    我自己处理的过程: 1. 问题场景: 1.1 我本身有一个虚拟机为 win2003 + iis6.0 的环境 c:\ 为NTFS 格式 D:\为Fat32 格式 1.2 我需要部署一个 asp.net ...

  6. phalcon框架学习之router

    router定义 在DI中注册router的方法: $di->set('router', function(){ $router = new Phalcon\Mvc\Router(); $rou ...

  7. Summarize code for the three presentation experiments

    Image Picker Controller @IBAction func experiment() { let controller = UIImagePickerController() sel ...

  8. 【转】java 访问.net webservice返回的数据集

    转自[转的也是转的][http://blog.csdn.net/fox123871/article/details/8637839] 1. 概述 很多正在开发或者打算开发XML Web Service ...

  9. 【漫画解读】HDFS存储原理(转载)

    以简洁易懂的漫画形式讲解HDFS存储机制与运行原理. 一.角色出演 如上图所示,HDFS存储相关角色与功能如下: Client:客户端,系统使用者,调用HDFS API操作文件;与NN交互获取文件元数 ...

  10. Ubuntu CTRL+ALT+F1~F6 进入命令模式后不支持中文显示的解决办法

    前言 我在实验进入linux系统启动xwindow server而不启动KDE GNOME等桌面系统时遇到的问题.只启动x server而不启动桌面系统,在xserver之上运行一个全屏的图形界面程序 ...