安装git
1 yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel
2 yum install -y git
3 git config --global user.name "Your Name"
4 git config --global user.email "email@example.com"
5 git config core.filemode false #忽略文件权限
 
默认git版本为1.7.1无法clone版本库,需要升级git客户端
yum install perl-ExtUtils-MakeMaker package gettext-devel
tar -xzf git-2.4.1.tar.gz
cd git-2.4.1
make configure
./configure
make
make install

  

身份认证
1,生成本地主机id_rsa.pub公钥,将内容添加到gitlab的SSH keys
2,使用帐户验证 在gitlab创建帐户,添加用户到project member 直接从远程库克隆
git clone git@gitlab.ve.cn:xikai/test.git
git clone http://gitlab.ve.cn/xikai/test.git

提交文件到git版本库
git add file #把文件修改添加到暂存区
git rm #从版本库删除文件
git commit -m "xxxxx" #把暂存区的所有内容提交到当前分支
git status #查看状态
git log #显示版本日志
git reflog #列出所有操作记录
git checkout -- readme.txt #将工作区指定文件回到最近一次git commit或git add时的状态
git reset HEAD readme.txt #将暂存区指定文件重新撤回工作区
 

储藏
git stash                    #把当前工作现场"储藏"起来,等以后恢复现场后继续工作(你当前的工作还没有完成提交,当前又必须先去修复bug时,需要将当前工作区“储藏”起来,保持工作区干)
git stash pop #恢复之前"储藏"的工作现场,同时把stash内容也删除
git stash list #查看stash内容

版本回退
git reset --hard HEAD^        #回退到上一个版本
git reset --hard HEAD~100 #回退到上100个版本
git reset --hard 3628164 #回到指定commit ID的版本(commit ID不用写全
 
分支管理
一个成功的git分支方案:
http://blog.csdn.net/dbzhang800/article/details/6798724
git branch -a                    #列出所有本地分支及远程分支
git checkout -b develop #创建并切换develop分支
git checkout develop #切换分支
git branch -d myfeature #删除develop本地分支(git branch -D myfeature 强行删除没有被合并的分支)

  

删除远程库分支
git branch -r -d origin/develop            #删除本地对应的remotes/origin/develop
git push origin :develop #将本地空的分支推送到远程指定分支,冒号前面空格不能少
git checkout -b develop origin/develop #创建远程develop分支到本地
git branch --set-upstream branch-name origin/branch-name #建立本地分支和远程分支的关联

合并分支
git merge develop
git merge --no-ff -m "commit message" develop #合并develop分支到当前分支(develop分支文件的内容会覆盖当前的内容)

 
注:合并分支默认会使用Fast forward "快进模式",当被合并的分支被删除时,会丢掉分支信息; --no-ff禁用快进模式,Git就会在merge时生成一个新的commit

推送拉取
git remote -v                #查看远程git服务端地址
git push -u origin master #推送本地当前指定分支到远程服务端 -u第一次推送用于关联本地master分支与远程master分支
git push -u origin develop
git pull origin master #从远程git服务器拉取指定分支数据到本地当前分支
git pull origin develop
git push #推送所有分支
git pull #拉取所有分支

标签管理
git tag                            #列出所有tag
git tag -a v1.0 -m "v1.0" #为当前分支打标签
git tag v0.9 6224937 #为指定版本打标签
git push origin --tags #推送tags
git pull origin --tags #更新当前分支和tags
git checkout v1.0 #检出指定tag
git show v0.1 #查看tag信息
git tag -d v0.1 #删除本地标签
git push origin :refs/tags/v0.1 #删除远程标签(必须先删除本地标签再push origin) 

忽略特殊文件
有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件等等,每次git status都会显示“Untracked files ...”,有强迫症的童鞋心里肯定不爽
解决方法:在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,提交.gitignore文件到版本库,Git就会自动忽略.gitignore中的文件
参考文档:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

Git 常用命令汇总的更多相关文章

  1. Git学习总结(10)——git 常用命令汇总

    1.git 基本概念: 工作区:改动(增删文件和内容) 暂存区:输入命令:git add 改动的文件名,此次改动就放到了'暂存区'(新增的文件) 本地仓库(简称:本地):输入命令:git commit ...

  2. 【开发工具 - Git】之Git常用命令汇总

    本文记录了Git Bash中的常用指令. 1       Git操作 git clone XXXXX:将GitHub项目XXXXX克隆到本地 git remote –v:查看远程连接信息 git ch ...

  3. Git常用命令汇总

    1.初始化相关 git init 初始化仓库 git remove add origin url 添加仓库地址 git remove rm origin 删除仓库地址 git clone 克隆别人的分 ...

  4. git常用命令2

    一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...

  5. Git常用命令清单笔记

    git github 小弟调调 2015年01月12日发布 赞  |   6收藏  |  45 5k 次浏览 这里是我的笔记,记录一些git常用和一些记不住的命令,这个笔记原本是基于 颜海镜的文章增加 ...

  6. Git 常用命令速查表(图文+表格)

    一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...

  7. Git常用命令集锦

    本篇Git命令博客主要是一些Git常用命令,适合于有一定Git或linux基础的小伙伴进行参考 1.新建文件夹 mkdir 文件夹名 2.查看目录机构: pwd 3.将文件添加至Git管理范围:git ...

  8. 转 Git 常用命令大全

    一. Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态  git commit 提交  git branch -a 查看所有的分支 git branch ...

  9. git常用命令3

    一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态git commit 提交git branch -a 查看所有的分支git branch -r 查看 ...

随机推荐

  1. Ubuntu DNS bind9 配置

    下面的配置就是实现解析test.zp.com到不同的IP地址 安装dns server软件包$ apt-get install bind9 配置dns配置文件的路径在/etc/bind路径下面添加一个 ...

  2. 【转】PHP android ios相互兼容的AES加密算法

    APP项目用户密码传输一直没有用HTTPS,考虑到用户的隐私暂时先用AES对密码加密,以后也可以用于手机端与服务端加密交互. PHP的免费版phpAES项目,手机端解码各种不对. 好不容易找了PHP ...

  3. android studio导入包后无法import

    android studio导入jar包的方法: 1.将jar包放到module的libs目录下 2.在所导入的jar包上右键,选择“Add as library”. 其中,第二点跟eclipse不同 ...

  4. linux expr命令参数及用法详解

    expr用法 expr命令一般用于整数值,但也可用于字符串.一般格式为: #expr argument operator argument expr也是一个手工命令行计数器. #$expr 10 + ...

  5. openCV(二)---iOS中使用openCV的图片格式转换

    可以实现将UIImage和IplImage类型实现相互转换 //由于OpenCV主要针对的是计算机视觉方面的处理,因此在函数库中,最重要的结构体是IplImage结构. - (IplImage *)C ...

  6. C++设计模式-Visitor访问者模式

    #include <iostream> #include <string> #include <string.h> #include <memory> ...

  7. TOMCAT-publishing to tomcat v7.0 server at

    因为tomcat的work文件没有清空,导致MyEclipse部署在server.xml文件中的项目路径是错误的. 解决办法:清空work文件夹 下面这个勾勾是MyEclipse自动发布项目路径的选项

  8. php事件驱动

    1. [文件] class.Dispatcher.php ~ 967B     下载(9) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 ...

  9. OpenGL网络资源

    转 十大OpenGL教程 1.http://nehe.gamedev.net/这个是我觉得全世界最知名的OpenGL教程,而且有网友将其中48个教程翻译成了中文http://www.owlei.com ...

  10. GDB调试程序常用命令

    1.在xv6 内核中 通过 nm kernel | grep _start 找到kernel的起始地址是0010000c 8010b50c D _binary_entryother_start 801 ...