git的一些常用基础命令
一些常用的git命令操作简单总结
记录常用的git命令,附带命令的简单使用说明
git区域分布
remote远程仓库 repository本地仓库 index暂存区 workspace工作区 stash与独立分支的堆区
- workspace add/stage=> index
git add ./filename git stage ./filename - index commit=> repository
git commit -m "xxx" - repository push=> remote 不同名:
git push origin branchName同名:git push本地分支与远程分支必须具有track关系 - remote fetch=> repository 初次建本地仓库
git clone拉最新代码git fetch - remote pull=> workspace
git pull - repository => workspace
git checkout
分支处理
查看分支
git branch查看本地分支git branch -a查看本地分支和远程分支(git pull origin更新最新创建的远程分支)
分支创建
git branch develop创建本地分支名为develop(此时没有track跟踪远程分支,git branch -vv查看跟踪关系)git checkout develop本地切换分支到developgit checkout -b develop===前两步
本地分支track跟踪远程分支
假设要创建一个分支develop
远程有分支,新建本地分支跟踪远程分支(分支名:origin/develop)
本地创建分支track跟踪远程分支:
git checkout --track origin/branch_name
- 方法1
git checkout --track origin/develop将自动新建一个与远程分支同名的本地分支develop ,会自动track跟踪远程的同名分支origin/develop。
- 方法2
git checkout -b new_branch_name origin/branch_name根据远程分支origin/branch_name 创建一个本地分支 new_branch_name,会自动track跟踪。这样可创建不同名分支。建议分支名一样。
远程没有分支,新建远程分支
本地创建无track关系的分支,推送到远程,并且:
git push --set-upstream origin branch_name自动在远程创建一个 branch_name 分支,然后自动本地分支 branch_name track origin/branch_name 远程分支
- 方法1
git branch developgit checkout developgit push --set-upstream origin develop会自动在远程创建一个同名分支origin/develop,并跟踪
分支合并与删除
假设要将develop合并到master
- 先切换到要主分支:
git checkout master - 合并分支:
git merge develop - 删除本地分支
git branch -d develop - 删除远程分支
git push origin --delete develop
代码回滚
checkout
- 重置workspace的代码:
git checkout fileName重置所有git checkout . - 1中不可重置新建的文件。
git clean -df重置workspace所有新加的代码和文件
revert
git revert HEAD~1 / commit_id撤销一个提交的同时会创建一个新的提交。安全。不会移除当前分支的一些提交commit记录
reset
git reset HEAD~1 / commit_id在提交层面上,reset将一个分支的末端指向另一个提交。不安全,最好不要再公共分支上使用。会移除当前分支的一些提交commit记录
独立堆区
stash
git stash将当前的更改存放到独立于所有分支的堆区(例如切换分支时,又不想commit当前更改)git stash pop将堆区返回workspacegit stash list查看stash列表
对比stage, stash隶属于当前分支的暂存区,属于分支的子集。
tag标签
git tag tag-name给最新commit打标签git tag -d tag-name删除对应标签git push origin tag-name推送标签到远程
git的一些常用基础命令的更多相关文章
- Linux常用基础命令整理:关机命令、查看目录下文件命令等
Linux常用基础命令整理:关机命令.查看目录下文件命令等 整理了一些Linux常用基础命令,欢迎指正. 首先记住四个热键,学会这四个键,收益一辈子. Tab按键---命令补齐功能Ctrl+c按键-- ...
- git bush的一些基础命令
git bush的一些基础命令(不区分大小写) 通过命令创建本地仓库 首先自己需要手动建一个文件夹用于本地仓库 进行如下输入,使用cd跳转到刚刚创建的文件夹中 之后再输入 git init 即可创建 ...
- CentOS常用基础命令大全
这篇文章主要介绍了CentOS常用基础命令大全,学习centos的朋友需要掌握的知识,需要的朋友可以参考下 1.关机 (系统的关机.重启以及登出 ) 的命令shutdown -h now 关闭系统(1 ...
- MySQL数据库入门常用基础命令
MySQL数据库入门———常用基础命令 数据——公司的生命线,因此在大多数的互联网公司,都在使用开源的数据库产品,MySQL也因此关注度与使用率非常的高,所以做为运维的屌丝们,掌握它的一些基 ...
- Docker 使用笔记-常用基础命令
常用基础命令 环境:Linux Ubuntu 1.查看docker信息 docker version | docker info 2.启动docker服务 sudo systemctl start d ...
- Linux常用基础命令(二)
Linux常用基础命令 一.-ls--列表显示目录内容 二.-alias--设置别名 三.-du--统计目录及文件空间占用情况 四.-mkdir--创建新目录 五.-touch--创建空文件 六.-l ...
- git总结一、工作中常用基础命令
首先来了解两个概念: 工作区:比如你的项目目录 暂存区:git和其他版本控制系统的不同之处就是有这个暂存区的概念. .git不是工作区,而是git 版本库,在版本库中存放着很多东西,比如暂存区(sta ...
- Docker 容器安装及常用基础命令
为什么用docker 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具有众多的优势. Docker 在如下几个方面具有较大的优势: 更快速的交付和部署 Docker在整个开发周期都可以 ...
- 前后端同学,必会的Linux常用基础命令
无论是前端还是后端同学,一些常用的linux命令还是必须要掌握的.发布版本.查看日志等等都会用到.以下是我简单的总结了一些简单又常用的命令,欢迎大家补充.希望能帮助到大家 本文首发于公众号 程序员共成 ...
随机推荐
- NVIDIA深度学习Tensor Core性能解析(上)
NVIDIA深度学习Tensor Core性能解析(上) 本篇将通过多项测试来考验Volta架构,利用各种深度学习框架来了解Tensor Core的性能. 很多时候,深度学习这样的新领域会让人难以理解 ...
- 用于ONNX的TensorRT后端
用于ONNX的TensorRT后端 解析ONNX模型以使用TensorRT执行. 另请参阅TensorRT文档. 有关最近更改的列表,请参见changelog. 支持的TensorRT版本 Maste ...
- CUDA刷新器:CUDA编程模型
CUDA刷新器:CUDA编程模型 CUDA Refresher: The CUDA Programming Model CUDA,CUDA刷新器,并行编程 这是CUDA更新系列的第四篇文章,它的目标是 ...
- Spring Cloud系列(五):服务网关Zuul
在前面的篇章都是一个服务消费者去调用一个服务提供者,但事实上我们的系统基本不会那么简单,如果真的是那么简单的业务架构我们也没必要用Spring Cloud,直接部署一个Spring Boot应用就够了 ...
- 【NX二次开发】隐藏、显示对象UF_OBJ_set_blank_status
隐藏.显示对象用UF_OBJ_set_blank_status() 查看对象显示情况用UF_OBJ_ask_display_properties() 效果: 源码: #include "Te ...
- 【VBA】获取文件夹下所有文本文件
源码: 1 Sub 获取文件夹下所有文本文件() 2 Dim strPath As String 3 strPath = "G:\A\" 4 Dim MyFile As Strin ...
- 彻底搞懂彻底搞懂事件驱动模型 - Reactor
在高性能网络技术中,大家应该经常会看到Reactor模型.并且很多开源软件中都使用了这个模型,如:Redis.Nginx.Memcache.Netty等. 刚开始接触时可能一头雾水,这到底是个什么东东 ...
- NOIP模拟测试「简单的区间·简单的玄学·简单的填数·简单的序列」
简单的区间 $update$ 终于$AC$了 找到$(sum[r]+sum[l](sum表示以中间点为基准的sum)-mx)\%k==0$的点 注意这里$sum$表示是以$mid$为基准点,(即$su ...
- 精尽Spring Boot源码分析 - 文章导读
该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ...
- mybatis_plus实现自动填充和逻辑删除
自定义填充 设置自定义填充规则 import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import org.apache.i ...
