Git命令大总结(纯手办)
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命令大总结(纯手办)的更多相关文章
- git命令大集合
git 使用整理 密钥生成 cd ~/.ssh //检查本机中是否有公钥信息 mkdir key_backup cp id_rsa*key_backup rm id_rsa //删除已有公钥 &quo ...
- 【】(Git)用动图展示10大Git命令
1.说明 git merge.git rebase.git reset.git revert.git fetch.git pull.git reflog-- 你知道这些 git 命令执行的究竟是什么任 ...
- 我所记录的git命令(非常实用)
一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...
- GIT命令行的使用
新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...
- 你不一定知道的几个很有用的 Git 命令
这里给大家分享一些很有用的 Git 命令,其中很多用法你可能都不知道,无论你是工作在团队环境中或在您的个人项目中,这些命令将对你帮助很大,让你可以更加高效的进行项目开发,更轻松愉快的工作和生活. 您可 ...
- 10个很有用的高级Git命令
迄今,我已经使用Git很长一段时间了,考虑分享一些不管你是团队开发还是个人项目,都受用的高级git命令. 1. 输出最后一次提交的改变 这个命令,我经常使用它 来发送其他没有使用git的人来检查或者集 ...
- Git命令详解
一个中文git手册:http://progit.org/book/zh/ 原文:http://blog.csdn.net/sunboy_2050/article/details/7529841 前面两 ...
- 常用Git命令汇总
常用Git命令汇总 跟着R哥来到了新公司(一个从硬件向互联网转型中的公司),新公司以前的代码基本是使用SVN做版本控制,甚至有些代码没有做版本控制,所以R哥叫HG做了一次Git分享,准备把公司所有的代 ...
- 常用Git命令大全
Git命令 查看.添加.提交.删除.找回,重置修改文件 git help <command> # 显示command的help git show # 显示某次提交的内容 git show ...
随机推荐
- vue之store中属性更新用法
//1.首先定义store对象下的属性 state: { data:'测试数据' } // 2.定义更改data数据的方法 mutations: { updatedata(state, p) { st ...
- mui的picker组件填坑
在公司项目用到mui,vue进行开发 import mui from './assets/js/mui.min.js'后 加window.mui = mui再 import './assets/js/ ...
- 天上掉馅饼 期望DP
C 天上掉馅饼文件名 输入文件 输出文件 时间限制 空间限制bonus.pas/c/cpp bonus.in bonus.out 1s 128MB题目描述小 G 进入了一个神奇的世界,在这个世界,天上 ...
- JAVA基础之线程
个人理解: 在相同的进程也就是运行同样的程序的前提下,线程越多效率越快!当然硬件也是个障碍!为了提高效率,可以多创建线程,但是也不是越多越好,这就需要了线程池进行管理!需要知道的线程实现的方法:继承T ...
- 从零开始的Lua宅[1]:编译Lua解释器
Lua是一门神奇的脚本语言,游戏宅必备,懒人必备.Lua差多不是学起来用起来最简单的语言了,以至于简单到自身就是文档,自身就是配置文件.但是Lua的运行效率却是众多脚本中非常高的,据说仅次于V8爹下的 ...
- Monitorix系统和网络监控工具
Monitorix 系统和网络监控公工具一.monitorixMonitorix是一款功能非常强大的免费开源轻型工具,目的在于监测Linux中的系统和网络资源.它可以定期收集系统和网络数据,并使用自己 ...
- pc端常见布局---垂直居中布局 单元素不定高
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- JavaScript空假值及其判断
一.javaScript五种空值和假值 分别为undefined,null,false,"",0,这五个值的共同点是在执行if语句时都会执行false分支,执行对应的非语句的时候都 ...
- JAVA-Web05
1 HTTP协议特点 1)客户端->服务端(请求request)有三部份 a)请求行 b)请求头 c)请求的内容,如果没有,就是空白字符 2)服务端->客户端(响应respon ...
- Spark性能调优之道——解决Spark数据倾斜(Data Skew)的N种姿势
原文:http://blog.csdn.net/tanglizhe1105/article/details/51050974 背景 很多使用Spark的朋友很想知道rdd里的元素是怎么存储的,它们占用 ...