GIT命令一页纸
,配置用户名和邮箱
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
,把一个文件夹初始化为git仓库
mkdir lg
git init
,查看当前仓库的状态 git status
,放到暂存区 git add readme.txt
,提交到仓库 git commit -m "init project"
,查看提交历史,使用git log
,
加参数显示更容易阅读的信息git log --pretty=oneline
,
使用git reflog
查看命令历史,以回到未来版本
,在提交的版本之间切换git reset --hard commit_id
,
回到上一个版本git reset --hard HEAD^
,查看工作区与版本库之间的区别 git diff HEAD -- readme.txt
,撤消刚才在工作区的修改 git checkout -- readme.txt
这个是如果放到了暂存区,就从暂存区里面恢复,如果没有,就直接从版本库里面恢复。
,从版本库里面撤消修改 第1步,git reset HEAD readme.txt
第2步,git checkout -- readme.txt
就是改了工作区的内容,还add到暂存区了。上面的命令会把最新的版本库里里面的readme.txt文件放到暂存区,然后再从暂存区里面恢复。
,删除文件 git rm test.txt
,重命名(移动文件) git mv test.txt t.txt
,如果没有使用git mv命令的话,就先git add t.txt
,然后git rm test.txt
,生成SSHkey ssh-keygen -t rsa -C "xxx@qq.com"
在git远程仓库上面把id_rsa.pub
的内容加上去
,把当前仓库与远程仓库关联起来 git remote add origin git@github.com:nimeiz/lg.git
,查看远程库信息 git remote
,使用git remote -v
查看更详细的信息
,往远程仓库上推送内容 git push origin master
,可以使用git push -u origin master
在第一次推送时把本地与远程的master分支关联起来,在以后的使用是可以简化命令
,从远程库克隆仓库下来 git clone git@github.com:nimeiz/lg.git
,查看分支 git branch
,切换分支 git checkout -b dev
意思是创建并切换到dev,相当于git branch dev
,git checkout dev
,把dev分支合并到master分支上
git checkout master
git merge dev
,删除dev分支 git branch -d dev
强制删除一个分支git branch -D feature-xx
,解决合并分支时的冲突 1,手动修改有冲突的文件,2,git add xxx.txt
,git commit -m "conflict fixed"
就完成了
,在log中查看分支合并图 git log --graph
,使每次合并有记录 git merge --no-ff -m "merge with no-ff" dev
,常用分支策略 master做为最稳定的主版本,dev测试版本,再下面的分支开发
,保存当前工作区现场 git stash
,恢复工作现场 git stash apply
恢复,git stash drop
删除
=> git stash pop
恢复并且删除
,查看stash内容 git stash list
恢复到指定stash:git stash apply stash@{0}
,推送dev分支 git push origin dev
,远程库的分支 git checkout -b dev origin/dev
创建远程origin的dev分支到本地
,指定本地dev与远程origin/dev的链接 git branch --set-upstream dev origin/dev
在git pull
提示"no tracking information"时用到
,往远程push出现冲突 1,git pull
将远程的内容取下来,2,手动解决冲突,3,commit,4,git push origin dev
再次推送
,创建标签 git tag -a v0.1 -m "version 0.1 released" 328923
使用 git log --pretty=oneline --abbrev-commit
查看commit_id
,查看标签 git tag
,删除标签 git tag -d v0.1
,推送标签 git push origin v1.0
是推送v1.0这个标签,
git push origin --tags
是推送所有本地标签到远程
,删除远程的标签 先删除本地的标签git tag -d v0.1
,
再从远程删除git push origin :refs/tags/v0.1
,本地仓库关联多个远程仓库
git remote rm origin
git remote add github git@github.com:nimeiz/lg.git
git remote add gitee git@gitee.com:nimeiz/lg.git
意思就是 把默认的远程库名origin
使用github
和gitee
给替换掉
推送的时候使用相对应的远程库名就好了
git push github master
git push gitee master
,配置git命令的别名
git的配置文件在~/.gitconfig
里面
用s
表示status
,用ch
表示checkout
,用co
表示commit
,br
表示branch
用unstage
表示git reset HEAD file
,美化后的log
git config --global alias.s status
git config --global alias.ch checkout
git config --global alias.co commit
git config --global alias.br branch
git config --global alias.unstage 'reset HEAD'
git config --global alias.last 'log -1'
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
GIT命令一页纸的更多相关文章
- Git & Github 一页简明笔记
由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...
- 我 Git 命令列表 (1)【转】
转自:http://www.microsofttranslator.com/bv.aspx?from=en&to=zh-CHS&a=http%3A%2F%2Fvincenttam.gi ...
- git 命令整理
记录一些git 命令,以便自己以后查阅 基本命令 1.git add (保存工作区的变动到暂存区) git add . 和git add -A把整个工作区添加到暂存区 2.git commit ( ...
- Git & Github 一页简明笔记(转)main
由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 使用方法:常用命令供随时查阅,其余内容供新手了解. 0. 常用命令一览 ...
- 一天工作所用到的Git命令
一天工作所用到的Git命令 像大多数新手一样,我一开始是在网上搜索 Git 命令,然后把答案复制粘贴,并没有真正理解它们究竟做了什么. 后来我曾经想过:"如果有一个最常见的 Git 命令的列 ...
- git命令的理解与扩展
Git的模式如图: Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Repository:仓库区(或本地仓库) 一.新建代码库 # 查看gi ...
- git 命令行下浏览器tig使用记录
git 命令行下浏览器tig使用记录 tig 是一款优化 git 命令行的工具,使 git 命令行更加的便捷人性化 .如果用习惯了,会上瘾. 以下是一些使用记录: 安装成功后,在 Repo 文件夹下, ...
- 工作所用的日常 Git 命令
几乎每个开发人员都在使用 Git,当然很可能是 GitHub.但大多数开发者大概有 99% 的时间只是使用这三个命令: #使用命令git add <file>,将文件添加到暂存区 git ...
- 源代码管理之Git命令的使用
目录 02.源代码管理之Git命令的使用 2.Git命令行演练-个人开发 2.1 如何学习git指令 2.2 初始化创建本地仓库 2.3 个人开发基本演练 2.4 Git的基本常识 3.Git命令行演 ...
随机推荐
- FreeRTOS--疑难解答
此章节涉及新手最常遇见的3种问题: 错误的中断优先级设置 栈溢出 不恰当的使用printf() 使用configASSERT()能够显著地提高生产效率,它能够捕获.识别多种类型的错误.强烈建议在开发或 ...
- 【福利】十一起,小冰科技所有UWP产品免费半个月
从十月一日起(UTC协调世界时),至十月十五,小冰科技所有UWP产品免费半个月!!!!!! 注意是UTC哦,中国区,比UTC早8个小时,要等到十月一号早晨八点开始... 现在小冰科技旗下一共发布了 5 ...
- 鼠标悬停,图片放大 CSS实现
因为最近做的项目刚好用到了这个实现,分享出来 class=enlarge 为div标签的class div img 为标签 .enlarge div img:hover{ transform: s ...
- Java SE 8 流库(二)
1.3. filter,map,flatMAP方法 流的转换会产生一个新流,它的元素派生出自另一个流中的元素: Stream<T> filter(Predicate<? super ...
- 实现一个websocket常驻进程服务
由于工作的原因,近期调查了一下mac系统下常驻服务的接收websocket信息和创建进程的方法原理.将具体实现细节记录下来备忘. (一).准备工作 1.安装brew,在终端中输入: ruby -e & ...
- 10_Eclipse中演示Git冲突的解决
1 在user1中的readme.txt文件里先改动,而且commitand push 选中user1,右击team->Commit-à watermark/2/text/aHR0cDov ...
- WPF中展示HTML
业务需求:将具有表格信息的HTML片段在WPF中展示出来,并像网页端一样,可以进行input的填写,checkbox选择,最后以HTML的形式完成保存. 天真的以为直接引入WPF中的WebBrowse ...
- sql对每一条记录都给他一个随机的数。
update [WonyenMall].[dbo].[T_Real_Commodity] set increment=FLOOR(RAND(ABS(CHECKSUM(NEWID()))) * 100) ...
- 【转载】JAVA中综合接口和抽象类实现的一种“抽象接口”
Muscleape个人总结:(这里的抽象接口是指:使用一个抽象类实现一个接口,是两部分结构) 使用一个抽象类直接实现接口,将接口中的方法区分为实现类必须要实现的和选择性实现的,其他需要实现接口的类型通 ...
- Spring Boot整合 JdbcTemplate
(1) 在pom.xml加入jdbcTemplate的依赖: (2) 编写DemoDao类,声明为:@Repository,引入JdbcTemplate (3) 编写DemoService类,引入De ...