git实用命令
http://blog.sina.com.cn/s/blog_4ce89f2001014qvr.html
1.git clone 从远程的Git版本库克隆代码,也可以理解成检出代码,可以在末尾指定新的名字
eg.
git clone git://github.com/someone/some_project.git some_project
2.git remote -v 查看远程仓库
3.git remote rm [name] 删除远程仓库
4.git remote set-url --push [name] [newUrl] 修改远程仓库
5.git pull [remoteName] [localBranchName] 拉取远程仓库
eg.
git pull origin master
6.git push [remoteName] [localBranchName] 推送远程仓库
eg.
git push origin master
7.git add
git
add test.txt #注意,要gitignore一些特殊文件,然后每一>次提交前git
status,确认提交的每一个文件
git
add - A
git
add *.c #用通配符的方式跟踪文件
8.git commit -m "msg"
9.git config
git
config --global user.name "myname" #设置用户名
git
config --global user.email "myemail" #设置邮箱
git
config --global core.editor "myeditor" #设置编辑器
git
config --list #查看config
10.git status #查看git状态
eg.#
On branch master
nothing
to commit (working directory clean) #可以看到当前branch
11.git commit -m 'initial commit' #修改最后一次提交,重新提交
git
add forgotten_file
git
commit --amend
12.git checkout -b 分支名字 #添加分支
eg.git
checkout -b branch1 添加branch1分支
git
checkout 分支名称 #好像是进入分支
git
commit -m "注释" #提交到分支
eg.git
checkout branch1
git
commit -m "branch1 init" #应该是提交到了branch1,等下验证
13.git checkout master #返回主分支
git
merge 子分支名称 #合并子分支到主分支
eg.git
merge branch1
git
branch -d 子分支名称 #删除子分支
eg.git
branch -d branch1
git
branch #查看分支
14.在使用git push 代码到数据仓库时,提示如下错误:
[remote
rejected] master -> master (branch is currently checked out)
这是由于git默认拒绝了push操作,需要进行设置,修改.git/config文件后面添加
如下代码:
[receive]
denyCurrentBranch
= ignore
15.git checkout – 文件名 #放弃单个文件的修改
16.忽略某些文件: vim
.gitignore
#
此为注释 – 将被 Git 忽略
*.a #
忽略所有 .a 结尾的文件
!lib.a #
但 lib.a 除外
/TODO #
仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/ #
忽略 build/ 目录下的所有文件
doc/*.txt
# 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
17.查看尚未暂存的文件更新了哪些部分,不加参数直接输入 git diff
eg.git
diff #此命令比较的是工作目录中当前文件和暂存区域快照之间的差>异,也就是修改之后还没有暂存起来的变化内容
18.要看已经暂存起来的文件和上次提交时的快照之间的差异,可以用 git diff --cached 命令
19.设置git使用vimdiff比较差异
git
config --global diff.tool vimdiff
git
config --global difftool.prompt No
20.git commit -a -m 'added new benchmarks' #跳过使用暂存区域,直接提交
21.移除文件:要从 Git 中移除某个文件,就必须要从已跟踪文件清单中移除(确切地说,
是从暂存区域移除),然后提交。
eg.git
rm grit.gemspec
git
rm --cached .project #移除已提交的文件
22.git mv README.txt README 移动文件
相当于:
mv README.txt README
git
rm README.txt
git
add README
23.查看提交历史
eg.git
log #默认不用任何参数的话,git
log 会按提交>时间列出所有的更新,最近的更新排在最上面。
git
log -p -2 #我们常用
-p 选项展开显示每次提交的内容>差异,用 -2 则仅显示最近的两次更新
git
log --stat -1 #git
log统计,非常好用
24.vimdiff的使用: git difftool
25.修补提交(修补最近一次的提交而不创建新的提交)
eg.git
commit --amend -m "commit message."
26.提交冲突时可以合并后再推送
git
pull # 获取远程版本库提交与本地提交进行合并
git
push # 提交
27.git fetch 与 git pull 都是从 remote 端取信息,在不接参数时,git fetch 与 git pull 有如下不同.
1.
git fetch 可以在一个 bare类型的repository内执行,而git pull 不可以
2.
git fetch 只从远程端取repository信息,如新的branch,tag,及新的代码变化>,也就是更新.git或bare型repository中的内容
但
git fetch 不会 checkout出任何代码
git
pull 不仅会执行git fetch的操作,git pull 还做了merge的操作。\
28.git revert
git
revert HEAD #撤销前一次
commit
git
revert HEAD^ #撤销前前一次
commit
git
revert <hash> 撤消指定的版本如:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff
29.检出分支
git
checkout -b william_template origin/william_template
git
pull
30.取消没有跟踪前的修改
git
checkout anilist.php
git实用命令的更多相关文章
- git 实用命令
git 覆盖本地修改 ,git 放弃本地修改,强制更新 git fetch --all git reset --hard origin/master git fetch 只是下载远程的库的内容,不做任 ...
- Git 实用命令记录
自从上次写了一篇 Git 入门 的相关博客以来,一直自以为自己能完全的掌握 Git,其实不然,今天一小伙问我,如何删除远程上面的一个分支,呃,不会. git branch -d 分支名 只能删除本地的 ...
- Git实用命令手册
下载代码 git clone <git地址> 用户配置 git config —-global user.name <name> git config —-global use ...
- Git实用记录
一.git命令名词解释 1.添加/跟踪/暂存:添加到本地索引 git add 文件名 2.提交:提交到本地仓库 git commit -m '注释' 3.推送:将提交到本地仓库的所有更新提交到服务器 ...
- Git知识总览(二) git常用命令概览
上篇博客我们从 git clone 和 git status 两个命令开始,引出了一系列的git操作命令, 请参见:<Git知识总览(一) 从 git clone 和 git status 谈起 ...
- git常用命令(转载自用)
转载自 阮一峰博客: http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 一个码农博客: http://blog.gitor.org ...
- 你需要知道的12个Git高级命令【转】
转自:http://www.linuxidc.com/Linux/2016-01/128024.htm 众所周知,Git目前已经是分布式版本控制领域的翘楚,围绕着Git形成了完整的生态圈.学习Git, ...
- Windows Git Bash命令行下创建git仓库并更新到github
大二的时候就听过老师说有一个叫git的版本管理工具,当时只是听老师说说而已,也没有去使用它,因为当时用过svn,就感觉自己没多少东西需要git管理. 最近几天,我经常在开源中国看别人的帖子,看到别人对 ...
- 公司Git实用记录
一.git命令名词解释 1.添加/跟踪/暂存:添加到本地索引 git add 文件名 2.提交:提交到本地仓库 git commit -m '注释' 3.推送:将提交到本地仓库的所有更新提交到服务器 ...
随机推荐
- leetcode之旅(7)-Move Zeroes
Move Zeroes 题目描述: Given an array nums, write a function to move all 0's to the end of it while maint ...
- Jquery Easing函数库
从jQuery API 文档中可以知道,jQuery自定义动画的函数.animate( properties [, duration] [, easing] [, complete] )有四个参数: ...
- 使用XStream是实现XML与Java对象的转换(6)--持久化
九.持久化 在第八节的示例中,当我们操作一组对象时,我们可以指定Writer.OutputStream来写出序列化后的XML数据,我们还可以指定Reader.InputStream来读取序列化后的XM ...
- 用js来实现那些数据结构14(树02-AVL树)
在使用二叉搜索树的时候会出现 一个问题,就是树的一条分支会有很多层,而其他的分支却只有几层,就像下面这样: 如果数据量够大,那么我们在某条边上进行增删改查的操作时,就会消耗大量的时间.我们花费精力去构 ...
- 如何实现Zabbix的主动注册功能
主动注册(Active Agent Auto-Registration),顾名思义,无需在Zabbix Web上手动添加host信息,即可实现主机的监控. 它是由Agent主动向Server注册. 相 ...
- Dubbo基本特性之泛化调用
Dubbo 是支持泛化调用的,什么是泛化调用呢?泛化调用的好处是什么呢,泛化调用说白一点就是服务消费者并没有服务的接口. 在<Dubbo入门-搭建一个最简单的Demo框架>一文中,我们已完 ...
- Windows 10创意者更新ISO发布!官方下载
http://news.mydrivers.com/1/526/526719.htm 去年7月份,微软面向Windows 10推出了“周年更新”,让系统变得更加稳定好用.今天,Windows 10迎来 ...
- 最优Django环境配置
2 最优Django环境配置 本章描述了我们认为对于中等和高级Django使用者来说最优的本地环境配置 2.1 统一使用相同的数据库引擎 一个常见的开发者错误是在本地开发环境中使用SQLite3,而在 ...
- 选择Web框架的20条标准
原文观点由Matt Raible提出,关于Matt Rabile的介绍:http://www.infoq.com/cn/author/Matt-Raible 内容摘自<Java程序员修炼之道&g ...
- ZAB协议(Zookeeper atomic Broadcast)
一.简语: ZAB协议是Paxos算法的经典实现 二.ZAB协议的两种模式: 崩溃恢复: 1.每个server都有一张选票(myid,zxid),选票投给自己 2.收集所有server的投票 3.比较 ...