p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #3e3e3e; background-color: #efefef }
span.s1 { }

前言:在git管理前必须得有一个仓库仓库可以是专门的服务器,也可以是一台外网能访问的电脑里做为版本仓库 在这之前 如果您没有自己的版本仓库 搭建一个Gitlab也是一个不错的建议

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #3e3e3e }
span.s1 { }

在这之前,得有一个裸仓库(就是 这个是相对于工作目录而言的,工作目录中有正常编辑的文件,而bare repository只存放这些文件的commit。)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #3e3e3e }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 19.0px "Helvetica Neue"; color: #ffffff }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #3e3e3e; min-height: 18.0px }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 19.0px "Helvetica Neue"; color: #ffffff; min-height: 23.0px }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #3e3e3e; background-color: #efefef }
span.s1 { }
span.s2 { background-color: #3f3b3a }

初始化一个裸仓库

git init --bare

一、拉取远程仓库

git clone git@git.blog8090.com:Diuge/blog.git

二、创建本地子分支

*(每个开发人员在自己的本地子分支上开发,推送远程分支也是推送到远程的子分支而不是master)*

gitcheckout-b自己的分支名称(本地子分支)

三、提交版本过程

gitadd.(或者某些文件名)

gitcommit-m"发布版本名称"('如:订单模块完成')

如果不是新建的文件或文件夹可以使用连贯命令提交

gitcommit-am"发布版本名称"('如:订单模块完成')

提交完成正常后,可以提交到自己的远程分支

gitpushoriginlvchang(本次远程和本地子分支暂定开发人员名字)

四、拉取远程版本

gitfetch(查看远程提交的版本)

gitmergeorigin/master(master或某个子分支名称拉取远程资源到本地)

五、其他常用命令

gitbranch(查看本地分支和自己所在位置)

gitstatus(查看文件情况)

gitdiff(查看拉取版本和本地版本冲突的地方)

gitrm(如果add.出现失误需要把某个文件移除出提交时使用)

gitmvoldnew(文件移动,理解为改名,解决大小写问题)

六、版本管理思路

1 小组每个开发人员建立自己的本地子分支,上传代码到远程子分支。

2 正常情况下每天下班之前30分钟~1小时,(正常情况下一天一次,特殊情况可以提出多次上传)上传代码,一人负责整合所有人的分支代码,测试无问题,则提交到远程origin master分支。(保持每天早上 远程主分支都是最新的)

3 每天早上来后先等待整合代码完成后,拉取主分支和子代码后再继续开发。

Ps:git版本管理没有一个绝对标准的版本,每个团队都因项目或管理者习惯而异,只要能管理好多人(团队)的版本管理就是一个不错的方法;以上只是提供管理思路(也可以套用)。如果您的团队已有一套成体系的版本管理规则,可以借鉴。

git 管理的更多相关文章

  1. 用git管理源代码

    自从做iOS开发的一年多以来,之前一直都是用svn进行代码管理.因为工作需要,我也开始用git管理源代码.关于git的基本使用,在此做一个详细的介绍,希望能对初次接触git的人有所帮助! 本篇博客针对 ...

  2. Linux下,使用Git管理 dotfiles(配置文件)

    1.管理你的 dotfiles 作为一个计算机深度使用者,并且长期使用 Linux 作为主要操作系统,折腾各种功能强大的软件是常有的事儿.这些软件有它们各自的配置文件,通常以 . 开头,因此有人管它们 ...

  3. 使用 Git 管理源代码

    在现代软件开发项目中,要成为一个有效的软件开发人员,我们必须能够与其他项目贡献者并行进行开发.源代码管理(SCM)系统不是什么新思想.为了编写一些能够更快速.简单地开发以后软件项目的软件,已经进行了很 ...

  4. App开发流程之源代码Git管理

    base项目已经可以编译运行了,只不过没有实际功能而已.继续完善base项目前,我们需要考虑一下代码管理的事情了. 不管是一个人开发还是一个团队开发,对源代码进行版本管理是必须的,任何人对代码的的任何 ...

  5. git管理工具的使用教程

    Git入门教程 1.   概述     对于软件版本管理工具,为什么要选择Git?      你真正学会使用Git时, 你就会觉得这个问题的回答是非常自然的.然而当真正需要用文字来回答时,却觉得文字好 ...

  6. git管理和自动部署项目

    当一个项目需要纳入到版本控制的时候,选择的工具还是比较多的,最常见的就是工具有CVS,SVN,GIT等.在平时的开发中视情况而定,从来就没有最好的版本控制工具,只有最适合的工具.在这里我习惯用git来 ...

  7. git管理修改

    为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件. 新增了一行,这就是一个修改,删除了一行,也是一个修改,更改了某些字符,也是一个修改,删了一些又加了一些,也是一个修改 ...

  8. Git管理工具对照(GitBash、EGit、SourceTree)

    Git管理工具对照(GitBash.EGit.SourceTree) GitBash是採用命令行的方式对版本号进行管理,功能最为灵活强大,可是由于须要手动输入希望改动的文件名称,所以相对繁琐. EGi ...

  9. 怎么样eclipse发达国家多重聚合关系maven项目和使用git管理

    最近使用的项目的开发maven,多于maven有项目之间有一定的联系,因此,创建一个单独的,然后,maven聚合管理. 项目采用git要管理代码.由于上传的代码集时,.gitignore不要上传文件. ...

随机推荐

  1. 在开源中国(oschina)git中新建标签(tags)

    我今天提交代码到主干上面,本来想打个标签(tags)的. 因为我以前新建过标签(tags),但是我现在新建的时候不知道入库在哪了.怎么找也找不到了. 从网上找资料也没有,找客服没有人理我,看到一个交流 ...

  2. ORACLE从共享池删除指定SQL的执行计划

    Oracle 11g在DBMS_SHARED_POOL包中引入了一个名为PURGE的新存储过程,用于从对象库缓存中刷新特定对象,例如游标,包,序列,触发器等.也就是说可以删除.清理特定SQL的执行计划 ...

  3. ucos实时操作系统学习笔记——任务间通信(消息)

    ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...

  4. 如何设计一门语言(七)——闭包、lambda和interface

    人们都很喜欢讨论闭包这个概念.其实这个概念对于写代码来讲一点用都没有,写代码只需要掌握好lambda表达式和class+interface的语义就行了.基本上只有在写编译器和虚拟机的时候才需要管什么是 ...

  5. What is Away3D

    做了几个基于Flash平台的3D的项目,一路走来收获颇多.Away3D作为一个开源的Flash3D引擎,在3D页游领域,无疑是当前OGRE在国内的地位. 翻译出了多年前做Away3D中国社区的时候翻译 ...

  6. C++ std::array

    std::array template < class T, size_t N > class array; Code Example #include <iostream> ...

  7. python的拷贝(深拷贝和浅拷贝)

    今天看了几篇关于python拷贝的博文,感觉不太清楚,所以我就自己做实验试一下,特此记录. 拷贝是针对组合对象说的,比如列表,类等,而数字,字符串这样的变量是没有拷贝这一说的. 实现拷贝有: 1.工厂 ...

  8. css3盒模型

    css2.1盒模型: 当你定义盒子的宽高后:如果添加padding和border值后盒子的宽高会被撑大 盒子的高度=定义的高度+(padding-top + padding-bottom)+(bord ...

  9. Python标准模块--built-ins函数

    1.Python内置函数 2.Python内置函数举例 2.1 数学运算 abs,计算绝对值: >>> abs(-1) 1 >>> abs(3) 3 round,四 ...

  10. Maven在Eclipse中的实用小技巧

    前言     我们在开发的工程中很多都是Maven项目,这样更加便于我们jar包的管理.而我们一般使用的IDE都是Eclipse,由于我们在日常的开发过程中会经常要用到一些Maven的操作,所以我今天 ...