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 查看当前所有配置 ...
随机推荐
- Windows Server 2012安装mysql5.7.24记录
系统环境: 一.下载mysql5.7.24安装包 地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下载解压到相应的目录,我的路径 ...
- System.Data.Entity.Infrastructure.DbUpdateException
异常描述: 捕捉到 System.Data.Entity.Infrastructure.DbUpdateException HResult=-2146233087 Message=无法更新 E ...
- MSSQL TABLE COPY TABLE
SQL Server中,如果目标表存在: insert into 目标表 select * from 原表; SQL Server中,,如果目标表不存在: select * into 目标表 from ...
- Shader 入门笔记(一) 如何学习shader
本笔记,是根据自己学习shader的笔记,主要是参照冯乐乐的<Shader 入门精要> 和游戏蛮牛shaderLad视频 和网上一些博客. 为啥要学习这个呐? 自己其实之前学过一段时间的s ...
- WebSocket刨根问底(一)
年初的时候,写过两篇博客介绍在Spring Boot中如何使用WebSocket发送消息[在Spring Boot框架下使用WebSocket实现消息推送][在Spring Boot框架下使用WebS ...
- 带着新人学springboot的应用04(springboot+mybatis+redis 完)
对于缓存也说了比较多了,大家对下图这一堆配置类现在应该有些很粗略的认识了(因为我也就很粗略的认识了一下,哈哈!),咳,那么我们怎么切换这个缓存呢?(就是不用springboot提供的默认的Simple ...
- Session执行机制与原理
Session执行机制与原理 作者:Stanley 罗昊 [转载请注明出处和署名,谢谢!] 什么是Session 首先了解一下Session的中文意思:一次会话,什么是一次会话呢?我举个例子:就我们现 ...
- Oracle最新的Sql笔试题及答案
部门表(SM_DEPT) 字段名称 数据类型 是否主键 注释 DEPT_ID NUMBER Y 部门ID PARENT_DEPARTMENT_ID NUMBER N 上级部门 DEPARTMENT_N ...
- Qt显示Linux desktop natification气泡提示框
在现代Linux桌面环境上我们时常可以看到类似的消息框: 这些消息框常用在如下场景: 即时聊天软件的新消息 闹钟定时提示 电池电量提示 邮件消息 长耗时操作的完成提示 在freedesktop.org ...
- nginx错误界面优化和日志管理
nginx错误界面优化 在进行web访问的时候,经常会遇到网站打不开报错的情况,nginx默认的界面并不美观,我们可以通过重定向到自定义的错误页面,提升用户体验,比如淘宝的错误页面还有商品信息和广告. ...