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 ...
随机推荐
- Linux学习笔记——如何使用echo指令向文件写入内容
0.前言 本文总结如何使用echo命令向文件中写入内容,例如使用echo指令覆盖文件内容,使用echo指令向文件追加内容,使用echo指令往文件中追加制表符. echo向文件中输出内容 ...
- 【Java】 hashcode()和System.identityHashCode()
hashcode()和System.identityHashCode() openjdk8: http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/5b86f ...
- SharePoint Server 2016 WEB 网站浏览器支持
SharePoint Server 2016支持多种常用的Web浏览器,如Internet Explorer,Google Chrome,Mozilla Firefox,Apple Safari和Mi ...
- selenium3+webdriver学习笔记1(访问常用请求)
#!/usr/bin/env python# -*- coding:utf-8 -*- from selenium import webdriverimport osimport time url1= ...
- selenium-Python之上传文件
对于web 页面的上传功能实现一般有一下两种方式 普通上传:普通的附件上传是将本地文件的路径作为一个值放在input标签中,通过form表单将这个值提交给服务器 插件上传:一般是指基于flash.ja ...
- C# XML序列化/反序列化类XmlSerializer使用示例
using System; using System.IO; using System.Text; using System.Xml; using System.Xml.Serialization; ...
- Cocos2d-x——导入Cocostudio资源
(搬运自我在SegmentFault的博客) 目前正在和实训的小组成员一起做一款手机2D游戏,我们采用了Cocos2d-x进行开发.之前虽然早有耳闻,这次却是第一次认真地学习和使用Cocos2d-x. ...
- codeforces Gym 100286J Javanese Cryptoanalysis (二染色)
每一单词相邻两个字母,不能同时为元音或者辅音... 各种姿势都可以过:7个for,dp,黑白染色,dfs,并查集.... 最主要的思路就是相邻字母连边,把元音和辅音看成两个集合,那么有连边的两个字母一 ...
- 2017乌鲁木齐网络赛 j 题
题目连接 : https://nanti.jisuanke.com/t/A1256 Life is a journey, and the road we travel has twists and t ...
- mysql中的空值问题
MySQL的查询如果需要用到空值的情况下,where后面的条件就需要注意了 MySQL中的表示空值的方法:is null 和 is not null 比如:select * from user whe ...