以下为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. shell 判断文件是否存在

    举例 #!/bin/sh myFile="/var /log/httpd/access.log" if [ ! -e "$myFile" ]; then tou ...

  2. Delphi 用文件流读取文本文件字符串的方法

    procedure TForm23.Button4Click(Sender: TObject); var pstr:Pchar; mestr,Str1:string; FS:TFilestream; ...

  3. 用Python遍历目录

    用Python遍历指定目录下的文件,一般有两种常用方法,但它们都是基于Python的os模块.下面两种方法基于Python2.7,主要用到的函数如下: 1.os.listdir(path):列出目录下 ...

  4. springmvc+mybatis整合

    maven 依赖 <!-- springmvc --> <dependency> <groupId>org.springframework</groupId& ...

  5. linux(Debian) 中的cron计划任务配置方法

    cron服务每分钟不仅要读一次/var/spool/cron内的所有文件,还需要读一次/etc/crontab,因此我们配置这个文件也能运用cron服务做一些事情.用crontab配置是针对某个用户的 ...

  6. ActiveMQ实现负载均衡+高可用部署方案

    一.架构和技术介绍 1.简介 ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.完全支持JMS1.1和J2EE 1.4规范的JMS Provider实现 2.activemq的特 ...

  7. xampp windows版本安装后无法使用大文件下载的解决办法

    找到httpd.conf 在<Directory "C:/xampp/htdocs"> </Directory>添加EnableSendfile On

  8. 转 Jmeter之Bean shell使用(一)

    一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...

  9. sea.js 入门

    上个月学了 require.js 现在顺便来学学 sea.js. 对比下这两种的区别,看自己喜欢哪个,就在接下来的项目中去使用它吧. seajs中的所有 JavaScript 模块都遵循 CMD 模块 ...

  10. GetStoredProcCommand和GetSqlStringCommand的区别

    原文:http://www.ithao123.cn/content-4004602.html http://hi.baidu.com/847270942/blog/item/c224dd557ff74 ...