Git完整命令手册地址:http://git-scm.com/docs

  PDF版命令手册地址:github-git-cheat-sheet.pdf

1.git config -l查看全局用户信息配置
2.git config user.name = "liuburu" 配置用户名
 
3.git add Hello.java 添加文件到暂存区
 
4.git commit -m "注释语" 添加文件到工作区
 
5.git status 查看工作区文件状态
 
6.git log -pretty=online 版本格式显示
 
7.git reset --hard head~1 回退到上一个版本
 
git reset 撤销提交
 
8.git reflog 显示可以穿梭的历史版本信息,以及简写版本信息
 
9.git reset --hard e9a40a4 回退到指定的版本
 
10.git diff head Hello.java 与前一个版本作比较
 
11.git remote add origin url.. 把github与本地仓库相关联
 
12.git push -u origin master 把本地内容推送到github上
 
13.git remote -v 查看远程服务器已经存在的版本
 
14.git remote rm test 删除远程test仓库
 
15.git commit -a -m "一步提交操作"
 
16.git clone url 克隆远程仓库
 
17.git branch brh 创建一个分支
 
18.git branch 查看分支
 
19.git checkout brh 切换分支
 
20.git branch -d brh 删除分支
 
21.git checkout -b brh 创建并且切换分支
 
22.git push origin brh 推送分支到远程仓库(远程分支没有该本地分支,也没有关联)
git push -u origin/bth(推送并且关联)
 
23.git push origin --delete brh 删除远程分支
 
24.git branch -m brh newBrh 分支重命名
 
25.git branch -a/-r/-l 查看全部/远程/本地分支
 
26.git branch -D newBrh 删除分支(分支还未合并,强制删除)
 
27.git push origin --delete newBrh / git branch newBrh +git push origin :newBrh 推送空分支
 
 
28.Git自动解决冲突与手动解决冲突
 
29.git log --graph --pretty=oneling 图形显示日志
 
30.【本地-->远程】
意思:如有没有本地仓库使用第一种方法与远程仓库关联
如果有本地仓库,那么就是用第二种方法与远程仓库关联
We recommend every repository include a README, LICENSE, and .gitignore.
…or create a new repository on the command line
 
echo "# gitdemo" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/kakaluote444/gitdemo.git
git push -u origin master
…or push an existing repository from the command line
 
git remote add origin https://github.com/kakaluote444/gitdemo.git
git push -u origin master
…or import code from another repository
You can initialize this repository with code from a Subversion, Mercurial, or TFS project.
 
Import code
 
31.怎么同步远程仓库到本地【远程-->本地】
 
·远程分支先创建,如何使让其与本地进行关联,需要使用:
git branch --set-upstream-to = origin/liuburu
 
·git fetch origin liuburu master:temp
把远程分支上的liuburu分支抓取到本地的temp分支上
注意:此时liuburu分支上的数据并未同步到本地,需要
使用git merge origin/liuburu 进行数据同步
 
 
·git remote -v 查看远程仓库
·git fetch origin master 把远程仓库orgin的master分支下的代码下到本地的origin/master分之下
·git log -p master..origin/master 比较两个版本的差别
·git merge origin/master
 
·git fetch orgin master:temp
·git diff temp
·git merge temp
 
git pull origin master(相当于是从远程获取最新版本并merge到本地)
 
 
git checkout -b local-branchname origin/remote_branchname拉取远程分支上的代码到本地,并且切换到该分支
 
 
32.推送分支到远程分支以及删除远程分支
 
git push origin --delete lxh 删除远程分支
git branch lxh + git push origin :lxh 推送空分支删除远程分支
 
git branch -d | -D branchname 删除branchname分支
git branch -m|M oldbranch newbranch 重命名分支,M强制重命名
 
 
33.暂存区的使用
git stash 暂存
 
git pop 回复使用并且删除暂存
git stash apply 暂存应用恢复
git stash drop 暂存删除
 
 
34.标签的使用
git tag v1.0 为master定义标签
git tag v1.2 commitID 未指定版本定义标签
git show v1.2 查看指定标签
git tag 查看所有标签
git tag -a v1.2 -m "this is my tag" commitID添加注释
git tag -d v1.2 删除本地标签
git push origin:refs/tags/v1.2 删除远程标签
git push origin v1.2 推送一个标签
git push origin -tags 推送多个标签
git tag -d v1.2
 
 
 
 
 
35.Git忽略规则
 
# 此为注释 – 将被 Git 忽略
*.a # 忽略所有 .a 结尾的文件
!lib.a # 但 lib.a 除外
/TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
注意问题:
但是有时候在项目开发过程中,突然心血来潮想把某些目录或文件加入忽略规则,
按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被
track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
 
 
36:多人开发场景(自动决定冲突、手动解决冲突)
 
 
1.前提:老板创建好了远程仓库,并且含有readme.md文件,并且创建好了一个公共类型的配置文件config.properties(为了版本演示冲突)
 
注意:每一个开发者都应该遵循:第一次:克隆->增删改查->提交 以后:拉取->增删改查->提交
 
A:拉取远程项目,创建分支coder_lbrhy并且进行,创建LiuBuRu.java文件进行远程推送
 
B:拉取远程项目,切换到coder_lbrhy分支上,创建HuangYing.java文件并且进行远程推送
 
37.删除远程上呗忽略的文件
我向远程仓库提交了如下文件src/ pom.xml target/ WebContent/,发现没必要提交target目录。
于是做了如下操作:
git rm -r --cached target
git commit -m "delete target/"
git push origin master
打开github看一下,target目录是不是没有提交了!
如果想把target目录以后都不用提交,可以作如下
 
vi .gitignore
#写入:
target/
#可以在.gitignore中写入我们不想提交的文件或目录
#保存退出
git add .gitignore
git commit -m "write .gitignore"
git push origin master
以后就不会提交target目录了!

Git命令大总结(纯手办)的更多相关文章

  1. git命令大集合

    git 使用整理 密钥生成 cd ~/.ssh //检查本机中是否有公钥信息 mkdir key_backup cp id_rsa*key_backup rm id_rsa //删除已有公钥 &quo ...

  2. 【】(Git)用动图展示10大Git命令

    1.说明 git merge.git rebase.git reset.git revert.git fetch.git pull.git reflog-- 你知道这些 git 命令执行的究竟是什么任 ...

  3. 我所记录的git命令(非常实用)

    一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...

  4. GIT命令行的使用

    新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...

  5. 你不一定知道的几个很有用的 Git 命令

    这里给大家分享一些很有用的 Git 命令,其中很多用法你可能都不知道,无论你是工作在团队环境中或在您的个人项目中,这些命令将对你帮助很大,让你可以更加高效的进行项目开发,更轻松愉快的工作和生活. 您可 ...

  6. 10个很有用的高级Git命令

    迄今,我已经使用Git很长一段时间了,考虑分享一些不管你是团队开发还是个人项目,都受用的高级git命令. 1. 输出最后一次提交的改变 这个命令,我经常使用它 来发送其他没有使用git的人来检查或者集 ...

  7. Git命令详解

    一个中文git手册:http://progit.org/book/zh/ 原文:http://blog.csdn.net/sunboy_2050/article/details/7529841 前面两 ...

  8. 常用Git命令汇总

    常用Git命令汇总 跟着R哥来到了新公司(一个从硬件向互联网转型中的公司),新公司以前的代码基本是使用SVN做版本控制,甚至有些代码没有做版本控制,所以R哥叫HG做了一次Git分享,准备把公司所有的代 ...

  9. 常用Git命令大全

    Git命令 查看.添加.提交.删除.找回,重置修改文件 git help <command> # 显示command的help git show # 显示某次提交的内容 git show ...

随机推荐

  1. SSRS-lookupSet-DataSet-分组查询

    SSRS-lookupSet-DataSet-分组查询 来源:http://www.cnblogs.com/biwork/p/3621885.html 目录:http://www.cnblogs.co ...

  2. java 多线程死锁

    死锁案例: package com.test; public class DealThread implements Runnable { public String username; public ...

  3. jsonp, json区别

    JSONP由两部分组成: 回调函数和数据 回调函数是接收到响应时应该在页面中调用的函数,其名字一般在请求中指定. 数据是传入回调函数中的JSON数据. jsonp var script=documen ...

  4. vuejs 组件 移动端push 没有渲染页面

    this.idcards.push(arr) 这个无效 就知道了 vuejs有个跟push相同的方法 console.log(this.list.push.toString()) 这个push是个同名 ...

  5. CSS 利用border三角形绘制方法

    CSS 三角形绘制方法,这里面的transparent比较重要,有和没有影响很大: 原理:这个div是由4个三角形组成,每个三角对应一个border,隐藏其它3个border,就可以得到一个三角形. ...

  6. C++拾遗(五)——类

    类是 C++ 中最重要的特征.C++ 语言的早期版本被命名为“带类的 C(Cwith Classes)”,以强调类机制的中心作用.随着语言的演变,创建类的配套支持也在不断增加.语言设计的主要目标也变成 ...

  7. UVA 12405 Scarecrow (基础DP)

    题意: 给出一个1*N的矩阵(就是一行的格子),其中部分格子可以有草,部分无草,现在要求放置一些稻草人在某些格子上,每个稻草人可以覆盖3个连续格子,为使得有草的格子都能被覆盖,问最少放置几个稻草人. ...

  8. 使用nginx搭建一个简单的负载均衡

    在windows系统上使用IIS模拟出两个不同服务器的站点: 然后再NGINX使用轮询机制配置两个服务器以及虚拟服务器的端口: 需要注意的是,配置虚拟代理域名的话需要找到windowsC盘下的host ...

  9. UVA 10891 Game of Sum (决策优化)

    这是一个零和博弈,最高得分只和序列以及谁先手有关. d[i][j],表示i到j的序列当前取的这个人的最高得分,转移以后状态是新的区间和另一个人取,从中取最小值. 决策的最小值也可递推. #includ ...

  10. UVA 10537 Toll! Revisited (逆推,最短路)

    从终点逆推,d[u]表示进入u以后剩下的货物,那么进入u之前的货物数量设为y,d[u] = x,那么y-x=ceil(y/20.0)=(y-1)/20+1=(y+19)/20. (y-x)*20+r= ...