git中常用的操作命令有哪些?常用操作命令归纳
git中常用的操作命令有哪些?本篇文章就给到大家归纳了一些git中常用操作命令。有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
git开始
全局配置:配置用户名和e-mail地址
|
1 2 |
|
git init:初始化git仓库,目录下生成一个.git文件
|
1 |
|
git add 文件名:将文件修改添加到仓库
|
1 |
|
|
1 |
|
git commit -m '说明':将文件提交到仓库
|
1 |
|
git status:查看当前仓库的状态,掌握工作区的状态
git diff readme.txt: 查看文件修改的内容
版本回退
git log:查看历史记录
git log --pretty=oneline: 只查看commit.id(版本号) 和 说明
git reset --hard HEAD^: 回退到上一个版本 HEAD表示当前版本,上一个是HEAD^,往上一百个是HEAD~100
git reset --hard commit.id: 回到指定版本号对应的版本
|
1 |
|
git reflog:用来记录你的每一个命令,以便确定回到哪个版本
几个概念
工作区(Working Directory):在电脑里的进行git操作的目录
版本库(Repository):工作区里的.git文件,就是版本库,git版本库里最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
把文件往Git版本库里添加的时候,是分两步执行的:
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
撤销修改
撤销分为三种情况:
第一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;(no add) ---> git checkout -- file
第二种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。(no commit)---> git reset head file
第三种是readme.txt已经commit了,就使用版本回退即可 ---> git reset --hard head^
1、git checkout -- readme.txt:将制定文件在工作区的修改全部撤销
注意:命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令
2、git reset:既可以回退版本,也可以把暂存区的修改回退到工作区
在第二种情况下,我们就可以使用git reset命令撤回工作区
|
1 |
|
撤回工作区后再使用git checkout命令从工作区撤回
删除文件
git rm file:从版本库中删除文件
误删的情况下可以使用版本库的版本’一键还原‘
|
1 |
|
远程仓库
git remote add origin github仓库地址:将本地仓库与远程仓库关联
git push -u origin master: 由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
git push origin master: 将本地master分支的修改推送到远程仓库
git clone github仓库地址:将远程仓库克隆到本地
分支管理
git branch dev:创建dev分支
git checkout dev :切换dev分支
git checkout -b dev:创建dev分支,并切换到dev分支。 -b参数表示创建并切换到dev分支
git branch: 查看所有分支, *表示当前分支
git merge dev: 合并指定分支到当前分支 。 结果中Fast-forward信息表示‘快进模式’ -->直接把master指向dev的当前提交,合并速度非常快
git merge --no-ff -m '描述内容' dev :--no-ff参数表示禁用Fast-forward,使用普通模式
git branch -d dev: 删除dev分支
git branch -D dev: 如果分支还没合并,使用-d无法删除,使用-D强制删除
git log --graph: 可以查看分支合并图。
git log --graph --pretty=oneline --abbrev-commit :--pertty=oneline 查看简短信息 --abbrev-commit: 查看commit缩写
场景:修复bug时创建分支
git stash: 将当前工作现场存储起来
git stash list :查看存储的工作现场列表
git stash pop:恢复工作现场并删除stash的内容
git remote: 查看远程仓库的信息
git remote -v: 查看origin的地址
git checkout -b dev origin/dev:在本地创建和远程分支对应的分支
git pull:抓取最新的远程提交
git branch --set-upstream-to=origin/dev dev: 建立本地分支和远程分支的关联
git rebse: 把本地未push的分叉提交历史整理成直线
标签管理
git tag <tagname>: 用于创建一个新标签,默认指向head,也可以指向commi.id
git tag: 用于查看所有标签
git tag -a <tagname> -m '标签信息' :为标签指定信息
git tag -d <tagname>: 删除本地标签
git push origin <tagname> :推送本地标签到远程
git push origin --tags: 推送全部未推送的本地标签到远程
git push origin :refs/tags/<tagname>:删除一个远程标签
自定义git
git config --global alias.'自定义简写指令' '被简写的指令'
|
1 |
|
命令行命令
cat readme.txt: 查看文件内容
rm file 删除文件
vi file: linux里的vi编辑器
(1)通过i键进入插入模式,可以修改文件
(2)通过Esc键进入命令模式 输入':wq!' -->保存+退出vi 输入':q!' -->不保存退出
以上就是git中常用的操作命令有哪些?常用操作命令归纳的详细内容,更多请关注php中文网其它相关文章!
git中常用的操作命令有哪些?常用操作命令归纳的更多相关文章
- git中通过实际操作来了解常用命令
基本的6个命令 常用的就下面6个命令,但是详细的可能有上百个命令. 还需要特别了解git的几个名词,workspace:工作区,Index/Stage:暂存区,Respository:本地仓库,Rem ...
- 关于Git中的一些常用的命令
深入了解git的checkout命令 检出命令(git checkout)是Git最常用的命令之一,同时也是一个很危险的命令. 因为这条命令会重写工作区.检出命令的用法如下: 用法一: git che ...
- GIT中常用的命令
最近项目中使用到了GIT,所以记录一下GIT中常用的命令. GIT使用的客户端有Git Bash:http://code.google.com/p/msysgit/ 还有乌龟TortoiseGit:h ...
- 图解git中的最常用命令
图解git中的最常用命令 Git命令参考手册(文本版) git init # 初始化本地git仓库(创 ...
- git中常用命令
1.全局安装git Git-2.11.1-64-bit() //配置gitgit config --global user.name "您的git账号名"git config -- ...
- Git 中的一些其他常用命令
1.查看提交的历史版本(git log) 我们可以使用 git log 命令来查看提交的历史版本. 默认不用任何参数的话,git log 会按提交时间列出所有的更新,最近的更新排在最上面.每个版本都有 ...
- git中常用的指令
1.初始化仓库 git init2.设置用户名与邮箱 git config --global user.name 'name' git config --global user.email 'emai ...
- git中Bash基本操作命令
).cd : 改变目录. ).cd . . 回退到上一个目录,直接cd进入默认目录 ).pwd : 显示当前所在的目录路径. ).ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列 ...
- JavaScript中正则表达式判断匹配规则以及常用的方法
JavaScript中正则表达式判断匹配规则以及常用的方法: 字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在. 正则表达式是一种用来匹配字符串的强有力的武器.它的设计思想 ...
随机推荐
- Android 混淆代码汇总
为了防止别人对自己被盗的劳动,混淆代码可以被反编译可以有效地防止,以下在下面的代码混乱总结的步骤: 1. 大家可能已经注意到一个新的项目将在下面看到的物品都有这个proguard-project.tx ...
- JS 输入框智能提示
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- C/C++读写csv文件(用getline探测逗号分隔符)
csv文件其实就是文本文件,每行字段用逗号分隔. 代码 #include <iostream> #include <string> #include <vector> ...
- WPF 绑定到静态属性(4.5)
1. 声明静态事件 /// <summary> /// 静态属性通知 /// </summary> public static event EventHandler<Pr ...
- 仿win7窗体自动顶部最大化左侧右侧半屏效果(改写nativeEvent,使用AdjustWindowRectEx)
#include "HMainWindow.h" #include <QApplication> #ifdef Q_OS_WIN #include <qt_win ...
- UAC就不能一次添加、永久信任吗?
每次都要点击确定,感觉好麻烦. 而且阻碍了某些功能的实现.
- QML于C++交互之信号与槽(signal&slot )
connect c++ SIGNAL with QML SLOT 简介 QML 与 C++ 混合编程时,总结了一下qml和c++互相直接调用.及信号与槽连接 的几种情况,详细使用情况看示例代码 所有的 ...
- 使用Boost的DLL库管理动态链接库
Boost 1.61新增了一个DLL库,跟Qt中的QLibrary类似,提供了跨平台的动态库链接库加载.调用等功能.http://www.boost.org/users/history/version ...
- 腾讯网移动端H5页面设计实战分享
分享 <关于我> 分享 [中文纪录片]互联网时代 http://pan.baidu.com/s/1qWkJfcS 分享 <HTML开发MacOSAp ...
- list 多行表头 表头合并
http://blog.csdn.net/safedebug/article/details/52971685