以下为git环境搭建:
先建用户-->建组-->用户添加到组
 
新建项目,命名空间选择组
项目建完后,会分配远端地址。
然后本地配置好远端地址后,提交代码。
 
设置用户,邮箱 git config --global user.name "xxx" , git config --global user.email "xxx@xx.com"
生成key:ssh-keygen -t rsa -C "xxx@xx.com"
粘贴入项目ssh框
设置远端git remote add origin git@192.168.1.1:xxscmdev/xx-scm-gms.git
 
 
以下日常操作命令: 
拉取主干:
git pull origin master
 
本地代码推送到服务端:
git push -u origin master
 
增加远程库地址:
git remote add origin git@192.168.1.1:xxx/xx-scm-gms.git
 
修改远程库地址:
git remote set-url origin git@192.168.1.1:xx-scm-gms.git
 
 
以下分支操作相关的命令:
 
建立分支:
git checkout -b wmswcfbranch
 
其他人获取分支:
git remote update
 
切换到分支
git checkout wcfbranch
 
切换到主干
git checkout master
 
推送分支
git push origin wmswcfbranch
 
重命名分支
git branch -m oldname newname
 
合并分支到主干
git checkout master 先切换到主干环境
git merge --squash wmswcfbranch
 
删除分支
git branch -D wcfbranch
 
以下为注意事项:

代码提交

代码提交一般有五个步骤:
1.查看目前代码的修改状态
2.查看代码修改内容
3.暂存需要提交的文件
4.提交已暂存的文件
5.同步到服务器

1.     查看目前代码的修改状态

提交代码之前,首先应该检查目前所做的修改,运行git status命令

a)        已暂存 (changes to be committed)

new file //表示新建文件

modified //表示修改文件

deleted //表示删除文件

b)       已修改 (changed but not updated)

modified //表示修改文件

deleted //表示删除文件

另外,git 给出了可能需要的操作命令,git add/rm, gitcheckout --

c)        未跟踪 (untracked files)

2.     查看代码修改的内容

git diff  <file>

比较某文件与最近提交节点的差异。

注意:如果该文件已暂存,那么应该使用git diff –cached<file>

git diff <hashcode> <hashcode>  <file>

比较某文件在提交节点a,节点b的差异。

技巧:如果省略后面一个hashcode,则默认表示与上一提交节点比较。(也可以利用^运算符)

3.     暂存需要提交的文件

如果是新建的文件

则git add  <file>

如果是修改的文件
则git add  <file>

如果是删除的文件
则 git rm  <file>

4.     提交已暂存的文件

git commit

注意注释填写规范。

git commit --amend

修改最近一次提交。有时候如果提交注释书写有误或者漏提文件,可以使用此命令。

5.     同步到服务器

同步到服务器前先需要将服务器代码同步到本地

命令: git pull

如果执行失败,就按照提示还原有冲突的文件,然后再次尝试同步。

命令:git checkout -- <有冲突的文件路径>

同步到服务器

命令: git push origin  <本地分支名>

如果执行失败,一般是没有将服务器代码同步到本地导致的,先执行上面的git pull命令。

 

解决合并中的冲突

 
 1.    显示冲突
 
     命令:   git status    提示冲突文件     
      如下:
      <<<<<<< HEAD:file.txt Hello world ======= Goodbye
       >>>>>>> 77976da35a11db4580b80ae27e8d65caf5208086:file.txt
 
2.    编辑解决冲突
 
   对比工具选择正确代码,删除冲突符号,或利用图形工具判断,
    
3.    提交 
 
    命令:
    $ git add file.txt $ git commit 
 
 
 git 建议步骤:
1.拉取最新 
2.提交
3.解决线上和本地的冲突或合并
4.编译通过没有问题,再次提交
5.推到线上 
 

 git 通过分支上线管理具体操作: 

1.git checkout master  ---切到master上
2.git remote update  ----获取最新分支结构
3.git pull origin master -----获取最新master分支代码
4.git checkout -b personal....   ----从当前master最新的代码上创建一个新开发分支 
5.git push origin personal...  ---推到远端分支
6.开发具体功能
7.git push origin personal...  --推送到自己分支

8.从master中建立testmaster测试分支, 将personal分支合并到testmaster

9.从master中建立publishmaster发布分支, 将personal分支合并到publishmaster

10.publishmaster分支合并master分支

 
 
  git合并分支的具体操作:
1.git checkout test     ---切换到母体
2.git pull origin test
3.git merge --squash --no-commit 被合并的分支名
4.解决冲突
5.git commit
6.git push origin test分支
 
 

合并原则:

 
1.保持自己的开发分支干净!!!!
2.在自己分支上别干别的分支的事!!

git入门操作命令(转载)的更多相关文章

  1. Git入门仅这篇就够了

    版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请表明出处:http://www.cnblogs.com/cavalier-/p/5978937.html 前言 大家好,我是Cavalier ...

  2. [置顶] 【Git入门之十五】Github操作指南

    原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/12374633 最终篇,介绍一下Github网站的使用,主要是翻译为主,简化了 ...

  3. 深入浅出Git教程(转载)

    目录 一.版本控制概要 1.1.什么是版本控制 1.2.常用术语 1.3.常见的版本控制器 1.4.版本控制分类 1.4.1.本地版本控制 1.4.2.集中版本控制 1.4.3.分布式版本控制 1.5 ...

  4. 深入浅出Git教程【转载】转载

    深入浅出Git教程(转载)   目录 一.版本控制概要 1.1.什么是版本控制 1.2.常用术语 1.3.常见的版本控制器 1.4.版本控制分类 1.4.1.本地版本控制 1.4.2.集中版本控制 1 ...

  5. Git 入门:概念、原理、使用

    出处: git入门:概念.原理.使用 git和Github 概念 Git --- 版本控制工具(命令). git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.git ...

  6. 码云配合git入门命令总结学习

    目录 码云配合git入门命令总结学习 基本设置 基本命令总结学习 准备工作以及基本思路 基本命令 码云搭建仓库步骤 准备前工作 具体操作方法 远程仓库基本命令 标签相关命令 所有命令总结 基本命令总结 ...

  7. git入门网站

    http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 git入门教程:对商业的.开源的. ...

  8. git入门及上传项目到github

    Git入门:       如果你完全没有接触过Git,你现在只需要理解通过Git的语法(敲入一些命令)就可以将代码上传到远程的仓库或者下载到本地的仓库(服务器),我们此时应该有两个仓库,就是两个放代码 ...

  9. git入门学习(二):新建分支/上传代码/删除分支

    一.git新建分支,上传代码到新的不同分支  我要实现的效果,即是多个内容的平行分支:这样做的主要目的是方便统一管理属于同一个内容的不同的项目,互不干扰.如图所示: 前提是我的github上已经有we ...

随机推荐

  1. sencha touch+phonegap+node.js打包

    这讲我们来讲解下如何使用phonegapa创建项目环境并通过她们将sencha touch打包成app,这里我们只讲解打包android的apk,打包ios的过程有点类似,但是需要在mac环境下,最后 ...

  2. DMA控制

    1.S3C6410中DMA操作步骤 S3C6410中DMA操作步骤:1.决定使用安全DMAC(SDMAC)还是通用DMAC(DMAC):2.开始相应DMAC的系统时钟,并关闭另外一组的时钟(系统默认开 ...

  3. php命名空间和autoload

    参考: 1.http://www.cnblogs.com/thinksasa/p/3423480.html  PHP的命名空间 2.http://blog.jjonline.cn/phptech/15 ...

  4. (Hibernate进阶)Hibernate系列——总结篇(九)

    这篇博文是hibernate系列的最后一篇,既然是最后一篇,我们就应该进行一下从头到尾,整体上的总结,将这个系列的内容融会贯通. 概念 Hibernate是一个对象关系映射框架,当然从分层的角度看,我 ...

  5. 关于oracle中创建新表时将我们要用的表的结构和数据都复制过去

    今天在oracle中遇到了一个问题,就是给我查询出来了一张表的数据,只有部分的字段,让我将这张表的结构和数据放到新的临时表中,并进行数据的查询. 我是这样做的: 如:create table tabl ...

  6. 洛谷P1371 NOI元丹

    P1371 NOI元丹 71通过 394提交 题目提供者洛谷OnlineJudge 标签云端评测 难度普及/提高- 提交  讨论  题解 最新讨论 我觉得不需要讨论O long long 不够 没有取 ...

  7. ContentProvider小结

    1.什么情况下需要使用ContentProvider 跨进程提供数据访问的接口,如果在同一个App下,没有必要使用此种方式 2.自定义ContentProvider public class MyCo ...

  8. centos 7 用yum安装 mysql

    首先centos7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb,安 ...

  9. Func<T>、Action<T> 的区别于说明

    一.Func Func是一个.Net内置的委托. Func<Result>,Func<T1,Result>是一个.Net内置的泛型委托. Func<TResult> ...

  10. log4j输出日志到不同文件

    1.先看log4j的配置文件 log4j.properties 没有此文件就在根目录下创建一个: log4j.rootLogger=INFO,R,Client log4j.appender.R=org ...