安装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常用操作汇总(转)

    如果一个文件被删除了,可以使用切换版本号进行恢复.恢复方法: 先确定需要恢复的文件要恢复成哪一个历史版本(commit),假设那个版本号是: commit_id,那么 git checkout com ...

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

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

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

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

  4. Git常用命令汇总

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

  5. Git 常用命令汇总

    #安装git yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel yum install -y g ...

  6. git常用基本命令

    一定要以管理员的身份打开,否则有些命令不能用,比如ssh -T git@github.com(查看配置ssh是否成功)@初始化git git config --global user.name ruo ...

  7. git 常用操作汇总

    1. 如何查看当前分支是从哪个分支创建来的?  git reflog --date=local 当前分支名称 2. 查看当前分支 git branch 当前分支前面会显示 * 号  3.切换到某个分支 ...

  8. git常用指令汇总

    命令行指令 Git 全局设置 git config --global user.name "cqu2003" git config --global user.email &quo ...

  9. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

随机推荐

  1. 微信小程序--录制音频,播放音频

    1.在pages创建一个main文件夹2.在main文件夹下创建一个miain.js文件.添加代码: const constant = require('../../utils/constant.js ...

  2. Flask02 路由的书写、蓝图、利用蓝图实现url前缀、利用蓝图实现子域名、访问静态文件

    1 书写路由的两种方法 1.1 利用Flask实例对象的 add_url_rule 方法实现 该方法有一个必填参数,两个默认参数 · rule : 请求路径的规则 endpoint : 端点,默认值是 ...

  3. 树莓派 Learning 002 装机后的必要操作 --- 01 解决上网问题

    树莓派 装机后的必要操作 - 解决上网问题 我的树莓派型号:Raspberry Pi 2 Model B V1.1 装机系统:NOOBS v1.9.2 树莓派 装机后的必要操作 解决上网问题 解决上网 ...

  4. geneid/genesymbol/ensemblid等之间的转换

    在基因注释时,难免碰到各种GENE在不同数据库之间的ID转换(例如,Ensembl ID 转Entrez ID,或者Entrez ID与GENE Symbol之间的转换).这里介绍一下常用的三个在线网 ...

  5. Entity Framework Code-First(16):Move Configurations

    Move Configurations to Separate Class in Code-First: By now, we have configured all the domain class ...

  6. Django 之 JsonResponse 对象

    JsonResponse 是 HttpResponse 的子类,与父类的区别在于: JsonResponse 默认 Content-Type 类型为 application/json HttpResp ...

  7. Sharepoint2013商务智能学习笔记之Performancepoint service 配置(九)

    1)配置Performance Service服务 第一步,新建performance service.先在管理中心,系统设置区域点击管理服务器上的服务,确认Performance Service服务 ...

  8. jquery获取ASP.NET服务器端控件dropdownlist和radiobuttonlist生成客户端HTML标签后的value和text值

    —.获取dropdownlist的text(ddlList为服务器端dropdownlist的ID,生成name属性等于ddlList的select标签) $("#ddlList optio ...

  9. BKMyFAQ

    邮箱配置如图 发送格式: { "bk_app_code": "bk_monitor", #该字段可以查看文件:/data/install/.app.token ...

  10. c++常考算法知识点汇总

    前言:写这篇博客完全是给自己当做笔记用的,考虑到自己的c++基础不是很踏实,只在大一学了一学期,c++的面向对象等更深的知识也一直没去学.就是想当遇到一些比较小的知识,切不值得用一整篇 博客去记述的时 ...