Git常用命令集锦
本篇Git命令博客主要是一些Git常用命令,适合于有一定Git或linux基础的小伙伴进行参考
1、新建文件夹 mkdir 文件夹名
2、查看目录机构: pwd
3、将文件添加至Git管理范围:git init
4、文件添加到Git本地仓库暂存区(stage)
(1)git add 文件夹名
5、文件提交到Git本地仓库分支(master)
(1)Git commit -m “提交备注描述”
6、生成 .ssh后缀文件:
(1)ssh-keygen -t rsa -C”自己的Git邮箱号”
7、查看文件夹下文件提交情况
(1)git status (查看该文件夹下还有多少文件没有进行提交至Git仓库)
(2)git diff 文件名 查看该文件修改了什么内容(如:git diff test.txt)
(3)git diff HEAD -- test.txt 第二种查看文件修改内容写法
(4)cat 文件名 查看文件内容 如:cat test.txt | iconv -f GBK -t UTF-8
8、版本回退
(1)git log 可以看见最近3次的提交记录
(2)git reset --hard HEAD^ 回退到上一个版本
(3)git reset --hard HEAD~5 回退到往上第五个版本
(4)git reflog 查看我之前的每一次命令(提交,修改,版本回退等)
(5)Git reset --hard 1002b (1002b指的是commit id的前几位数)
(6)git log --graph:查看分支合并图
9、撤销修改
(1)git checkout -- 文件名 如:git checkout test.txt (一定要有--)
说明:命令git checkout -- test.txt意思就是,把test.txt文件在工作区的修改全部撤销,这里有两种情况:
一种是test.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是test.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit或git add时的状态。
(2)将暂存区的修改文件撤销回放到工作区
git reset HEAD test.txt
10、删除文件
(1)rm 文件名 如:rm test.txt
①git rm test.txt 将文件从版本库中删除
②git commit -m “删除test文件”
(2)git checkout -- test.txt
①如果版本库中存在test.txt文件,可以将版本库中的文件替换成已删除的该文件
11、连接远程库
(1)git remote add origin git@github.com:Git远程库地址
(2)如:git remote add origin git@github.com:chenyuanbo888/first_repository.git
12、推送master分支内容:
(1)第一次推送:git push -u origin master
(2)后面推送最新更改:git push origin master
13、克隆远程仓库
(1)进入本地要存放的文件夹下,输入以下命令
(2)git clone git@github.com:chenyuanbo888/test.git
14、创建与合并分支
(1)git checkout -b dev 创建dev分支并切换至dev:相当于执行以下两条命名
①git branch dev
②git checkout dev
(2)git branch 查看所有分支
(3)git checkout master 切换至master分支
(4)合并某分支到当前分支:
①git merge dev 将分支dev合并到master分支,前提是现在在master分支下
(5)删除分支:git branch -d dev
15、分支管理
(1)禁用 Fast -forward合并分支,如:
①git merge --no--ff -m ”merge with no-ff” dev 禁用fast-forward,将dev分支合并到master分支,并创建了一个新的commit
(2)Bug分支
①git stash 将该工作区内容都储藏起来
②git stash list 查看工作区的内容
③git stash apply 恢复工作区内容,但不删除stash中的内容
④git stash pop 恢复工作区内容,并将stash中的内容进行删除
(3)Feature分支
①新增、合并和bug分支操作都一致
②git branch -D 分支名称 注意D为大写(强行删除)
(4)多人协作
①查看远程库信息
1)git remote -v
②将分本地支推送到远程仓库
1)git push origin 分支名称、
③推送失败时用git pull抓取远程的新提交文件
④在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
⑤建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
⑥从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
⑦同时推送相同修改文件版本冲突问题
1)先指定本地dev分支与远程origin/dev分支的链接,根据提示,设置dev和origin/dev的链接:
a.git branch --set-upstream-to=origin/dev dev
2)git pull 将远程的文件拉取到本地进行合并
3)手动将文件进行更改后在进行push提交至远程库
⑧Rebase
1)git rebase 将提交历史整理成一条线
Git还有些常用命令没有汇总完,后续我会补上,感兴趣的朋友可以关注我的博客:https://www.cnblogs.com/chenyuanbo/ ;另这篇博客本人主要是参考廖雪峰老师的讲解知识进行汇总,需要系统学习Git的小伙伴可以在百度上搜索廖雪峰进行关注;
技术——在于沟通交流!
Git常用命令集锦的更多相关文章
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- Git 常用命令详解
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- Git 常用命令大全
Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...
- Git常用命令总结
Git常用命令总结 git init 在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹. git clone ...
- GIT常用命令备忘
Git配置 git config --global user.name "storm" git config --global user.email "stormzhan ...
- Git 常用命令2
Git 常用命令 Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ gi ...
- git常用命令-基本操作
git常用命令-基本操作 1) 新增文件 新增了Test_1.java git add Test_1.java git commit –m “新增了Test_1.java” git push ...
- 转收藏:Git常用命令速查表
一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...
- git常用命令,git版本控制和Xcode结合使用,用Xcode提交到github,github客户端使用
1.git常用命令 查看命令: 1.git --help 查看git所有命令 2.git clone -help 查看git clone命令的细节 3.git config -l 查看当前所有配置 ...
随机推荐
- Android Native App自动化测试实战讲解(下)(基于python)
6.Appuim自动化测试框架API讲解与案例实践(三) 如图1,可以在主函数里通过TestSuite来指定执行某一个测试用例: 6.1,scroll():如图2 从图3中可以看到当前页面的所有元素r ...
- JAVA集合类兄妹List和Set
List 接口及其实现类 有序集合,集合中每个元素都有其对应的顺序索引,类似数组,索引也是从 0 开始,可以根据元素的索引,来访问元素. List 集合允许添加相同的元素,因为它是通过下标来取值的,不 ...
- Python进阶:迭代器与迭代器切片
2018-12-31 更新声明:切片系列文章本是分三篇写成,现已合并成一篇.合并后,修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔接做了大量改动.原系列的单篇就不删除了,毕竟也是 ...
- 爬虫入门(三)——动态网页爬取:爬取pexel上的图片
Pexel上有大量精美的图片,没事总想看看有什么好看的自己保存到电脑里可能会很有用 但是一个一个保存当然太麻烦了 所以不如我们写个爬虫吧(๑•̀ㅂ•́)و✧ 一开始学习爬虫的时候希望爬取pexel上的 ...
- Angularjs1.X进阶笔记(1)—两种不同的双向数据绑定
一. html与Controller中的双向数据绑定 html-Controller的双向数据绑定,在开发中非常常见,也是Angularjs1.x的宣传点之一,使用中并没有太多问题. 1.1数据从ht ...
- 【响应式编程的思维艺术】 (1)Rxjs专题学习计划
目录 一. 响应式编程 二. 学习路径规划 一. 响应式编程 响应式编程,也称为流式编程,对于非前端工程师来说,可能并不是一个陌生的名词,它是函数式编程在软件开发中应用的延伸,如果你对函数式编程还没有 ...
- MRC-block与ARC-block
上一篇已经讲解了MRC与ARC的基本知识,本篇我们讲解MRC-block与ARC-block的基本内容. 在MRC时代,Block会隐式地对进入其作用域内的对象(或者说被Block捕获的指针指向的对象 ...
- C#反射与特性使用简介
本文是学习特性与反射的学习笔记,在介绍完特性和反射之后,会使用特性与反射实现一个简单的将DataTable转换为List的功能,水平有限,如有错误,还请大神不吝赐教. 1. 反射:什么是反射 ...
- 杭电ACM2013--蟠桃记
蟠桃记 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
- mysql 查询导出(txt,csv,xls)
1 简介 工作中产品经常会临时找我导出一些数据,导出mysql查询结果数据有几种方法,下面介绍3种. ① mysql -u -p -e "sql" db > filep ...