git日常使用的常用命令总结
git日常使用的常用命令总结
git 是什么?
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。
通过版本控制系统,我们可以轻而易举的控制代码或者文档的版本。对于写代码来说,它最大的用处就是记录之前的历史版本。而且在与其他人协助开发的时候,可以轻而易举的看到总文件的改动。因此,熟练地使用这个工具是十分重要的。
在开始使用之前需要下载和安装git,可以遵循以下网址来进行操作: 安装教程
git 常用命令
1. 建立git版本库
git init
通过此命令可以把当前目录变成可以用git管理的仓库。
2.把文件添加到版本库
首先先在此目录下放入要这个入版本库的文件, 比如我要加入addfile文件, 就要输入下面两行命令。
git add addfile
git commit -m<message>
先把文件加入到版本库。然后再更新版本。
git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。
3. 其他常用命令
| 操作 | 命令 | 解释 |
|---|---|---|
| 查看状态 | git status | 可以看到仓库中文件的更新情况。 |
| 查看不同 | git status file.txt | 此查看文件改变了哪些地方 |
| 查看提交日志 | git log | 可以看到提交的历史记录 |
| 版本回退 | git reset | HEAD指向的版本就是当前版本 git reset HEAD^ 回退到上一个版本 git reset HEAD^^ 回去上两个版本 git reset HEAD~100 回退上100个版本 |
| 查看命令历史 | git reflog | 可以查看运行的命令的历史 |
| 丢弃工作区的修改 | git checkout -- file | 让这个文件回到最近一次git commit或git add时的状态。 |
| 丢弃缓冲区修改 | git reset HEAD | 把暂存区的修改撤销掉(unstage),重新放回工作区 |
4. 远程仓库
- 添加远程库
首先在github上创建一个远程仓库
然后运行代码将本地仓库和远程仓库相关联
git remote add origin git@github.com:<用户名>/addfile.git
- 本地内容推送到远程
git push origin master
把本地master分支的最新修改推送至GitHub
- 克隆仓库
git clone <网址>
通过克隆,把github上的仓库下载到本地,实现远程仓库
5.分支管理
在版本回退里,每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。
命令汇总:
| 命令 | 解释 |
|---|---|
| git branch | 建立分支 |
| git checkout new_branch | 切换分支 |
| git checkout -b | 建立,切换二和一 |
| git branch | 列出分支 |
| git merge new_branch | 合并分支 |
| git branch -d new_branch | 删除分支 |
6.多人协作
| 命令 | 解释 |
|---|---|
| git remote -v | 查看远程库信息 |
| git push origin branch-name | 从本地推送分支 |
| git checkout -b branch-name origin/branch-name | 在本地创建和远程分支对应的分支 |
| git branch --set-upstream branch-name origin/branch-name | 建立本地分支和远程分支的关联 |
| git pull | 从远程抓取分支 |
7.合并历史
rebase操作可以把本地未push的分叉提交历史整理成直线
8.标签管理
发布一个版本时,我们通常先在版本库中打一个标签, 比如V1.0 之类的,对于开发非常方便
| 命令 | 解释 |
|---|---|
| git tag | 新建一个标签,默认为HEAD |
| git tag -a -m "infomation" | 指定标签信息 |
| git tag | 查看所有标签 |
| git push origin | 推送一个本地标签 |
| git push origin --tags | 推送全部未推送过的本地标签 |
| git tag -d | 删除一个本地标签 |
| git push origin :refs/tags/ | 删除一个远程标签 |
还有其他的不是非常常用的命令可以看:
https://blog.csdn.net/halaoda/article/details/78661334 来查阅
参考博客
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
git日常使用的常用命令总结的更多相关文章
- 图解git中的最常用命令
图解git中的最常用命令 Git命令参考手册(文本版) git init # 初始化本地git仓库(创 ...
- 版本控制-Git服务器搭建和常用命令使用
Git是目前世界上最先进的分布式版本控制系统(没有之一).使用Svn的请参考<版本控制-svn服务器搭建和常用命令(centos 6.3)>,下面介绍Git的常用命令 常用命令 简单版 升 ...
- Git 基本概念及常用命令
一.基本概念 文件的三种状态:(任何一个文件在git中都有以下三种状态) 1) 已提交(committed):表示该文件已经被安全地保存在本地数据库中了. 2) 已修改(modified):表示修改了 ...
- git开发流程、常用命令及工具、TortoiseGit使用及常见问题
根据我最近使用git的一些经历,git是基于分支的版本控制工具,分支有远程分支和本地分支. 一.开发流程 - 从远程服务器的master,clone一份项目文件到本地,然后本地master的基础上br ...
- Git基础知识与常用命令
一:相关概念: 1:工作区(Working Directory): 就是你在电脑里能看到的目录 2:版本库(Repository): 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. ...
- Git的配置及常用命令
Git配置 git config --global user.name "<username>" git config --global user.email &quo ...
- Git 使用的配置 常用命令
老文一篇 搬过来 1. git的部分配置 # 全局提交用户名与邮箱 git config --global user.name "simon" git config --globa ...
- Git配置和一些常用命令
Git:常用命令.... git clone <repo> git config –list git diff –staged add后,commit前的撤销:git rm –cached ...
- Git的基本原理与常用命令[二]
标签(linux): git 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 git 的四个区域 四种状态 常用命令 git add #加入暂存(索引区) git ...
随机推荐
- svg 使用中的疑惑点
svg,g ,defs,symbol 都是容器元素,使用起来给人许多疑惑 svg-spirite-loader在页面生成的svg标签有什么特点? svg标签里面的symbol有什么用? 这些标签能够随 ...
- P4554 小明的游戏 (洛谷) 双端队列BFS
最近没有更新博客,全是因为英语,英语太难了QWQ 洛谷春令营的作业我也不会(我是弱鸡),随机跳了2个题,难度不高,还是讲讲吧,学学新算法也好(可以拿来水博客) 第一题就是这个小明的游戏 小明最近喜欢玩 ...
- JAVA面向对象:三大特征 封装讲解
一.JAVA封装 1.封装的理解 封装是 JAVA 面向对象思想的 一 种特性,也是一种信息隐蔽的技术 2.封装的原则 将类中的某些信息隐藏起来,来防止外部程序直接访问,通过类中的方法实现对隐藏的信息 ...
- 设计模式:bridge模式
目的:将“类的功能层次结构”和“类的实现层次结构”分类 类的功能层次:通过类的继承添加功能(添加普通函数) 类的实现层次:通过类的继承实现虚函数 理解:和适配器模式中的桥接方法相同 例子: class ...
- 解决win10安装flask-mysqldb报错 Python2.7
win10上安装的pycharm,在pycharm创建的py2.7虚拟环境中安装flask-sqlalchemy 执行pip install flask-mysqldb报错 error: Micros ...
- [spring] -- AOP、IOC、DI篇
AOP(面向切面编程) 怎么理解这个切面编程的概念及优点? 概念: 横切关注点与业务逻辑相分离,切面能帮助我们模块化横切关注点: 优点: 现在每个关注点都集中于一个地方,而不是分散到多处代码中: 服务 ...
- websphere8.5配置db2数据源
websphere8.5配置db2数据源 1. 打开websphere控制台 2.进入websphere变量页面 3. 进入DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH变 ...
- 获取DataGridview中某列的所有数据
/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam& ...
- 【扩展推荐】Intervention/image 图片处理
Intervention/image 是为 Laravel 定制的图片处理工具, 它提供了一套易于表达的方式来创建.编辑图片. 一.环境要求 二.安装及配置 下载地址:https://packagis ...
- 手牵手,从零学习Vue源码 系列一(前言-目录篇)
系列文章: 手牵手,从零学习Vue源码 系列一(前言-目录篇) 手牵手,从零学习Vue源码 系列二(变化侦测篇) 手牵手,从零学习Vue源码 系列三(虚拟DOM篇) 陆续更新中... 预计八月中旬更新 ...