Git 常用命令总结,将会持续更新
平常在windows电脑上使用Git Extensions 工具比较多,大部分的常用指令都可以通过点点点就可以完成。在mac电脑上的话使用sourcetree工具。但有时候也会直接通过git命令,很多时候也是通过百度来临时查阅,所以总结下来方便自己,也方便可能需要的你。
1、基本命令
- 1.1、 生成SSH公钥和私钥,公钥要复制配置到git服务器上的
// 生成SSH密钥
ssh-keygen -o // .pub后缀名为公钥,另外一个为私钥
cat ~/.ssh/id_rsa.pub
- 1.2、 git config 配置提交用户名和用户邮箱
git config --global user.name "aehyok"
git config --global user.email "aehyok@163.com" // 配置好后可通过这个来查看
git config -l
- 1.3、 创建项目后如何提交到仓库
// 创建项目后到指定的项目文件夹中初始化git
git init
- 1.4、 将文件添加到暂存区
// 将添加或修改的文件提交到暂存区
git add . // 将监控已经被add进暂存区的文件,会将被修改的文件再次提交到暂存区
// 或者是
git add -u // 则是git add .和 git add -u 两个命令的集合
// 或者是
git add -A
- 1.5、 提交到本地仓库(即自己当前电脑的代码仓库)
// 提交到本地仓库
git commit -m ' feat: 初始化项目'
- 1.6、 设置远程仓库地址(即代码要提交到哪里的服务器)
// 当然也可以使用ssh 链接
git remote add github.origin https://github.com/aehyok/demo.git
- 1.7、 推送到远程服务器(注意一点,首次推送要设置追踪)
// 设置本地分支追踪远程分支、、、之后就可以直接git push
git push --set-upstream origin main
- 1.8、 修改文件名会忽略大小写,默认都是忽略了,所以修改文件名大小写是无效的
// (查看是否忽略大小写) true则设置了忽略
git config core.ignorecase // 后面加上false则直接可设置不忽略,修改文件名大小写后会生效
git config core.ignorecase false
- 1.9、修改文件夹名字大小写的问题
// (修改前先将Test文件夹备份并修改为TestTemp<一个临时文件夹名字而已>,
// 然后执行命令
git rm Test
// 再将备份文件夹名字修改为需要的文件夹即可
--------------另外一种简单粗暴的方式-----------------
// 还是先备份好要删除的文件,然后将文件删除,提交到仓库。
// 完事后将备份的文件复制回来,然后修改文件大小写,再提交即可。
- 1.10、 是将远程主机的最新内容拉到本地 ,用户在检查了以后决定是否合并到工作本机分支中。
git fetch
//更多基本操作
//https://www.cnblogs.com/runnerjack/p/9342362.html
- 1.11、同样一个本地仓库可以设置多个远程仓库,然后通过不同的git push github.origin
// 设置个github远程仓库
git remote add github.origin https://github.com/aehyok/demo.git // 设置个gitee远程仓库
git remote add gitee.origin https://github.com/aehyok/demo.git // 推送到github
git push github.origin // 推送到gitee
git push gitee.origin
- 1.12、克隆代码库
// 目前没指定分支,默认为master
git clone https://github.com/aehyok/demo.git // 指定分支名称
git clone -b dev https://github.com/aehyok/demo.git
2、分支管理
- 2.1、 创建分支
// 切换到基础分支
git checkout main // 根据 切换到的main分支,创建dev分支并切换到dev分支
git checkout -b dev
- 2.2、 查看分支
// 查看本地分支
git branch // 查看本地分支和远程分支,如果不存在需要git fetch一下
git branch -a // 查看远程分支
git branch -r
- 2.3、 修改分支名称
// 修改当前本地分支的名称
git branch -m develop-lqm // 也可以修改指定的分支 原分支名称 新分支名称
git branch -m develop-lam develop-lqm
- 2.4、 删除本地分支和删除远程分支
// 先切换到其他分支
git checkout dev1.3.4 // 删除本地分支
git branch -d dev // 如果删除不了,可以进行强制删除
git branch -D dev // 有必要的情况下,删除远程分支但是要谨慎使用
git push origin --delete dev
3、合并代码
- 3.1、 将某个提交,任何跟仓库所有分支的commit 合并到当前分支
// (正常情况直接合并成功,可能存在重复图需要手动解决)
git cherry-pick commitid // 正常情况直接push即可,手动解决冲突需要commit 再进行push
git push // 扩展阅读:还可以一起提交commitid-A到commitid-B 之间所有的内容修改
// http://www.ruanyifeng.com/blog/2020/04/git-cherry-pick.html
- 3.2、 当前分支dev的代码提交push成功,此时想合并到main分支上
// 先切换到main分支
git checkout main // 将dev分支的变更拉取到main分支上来
git merge dev // 合并完成,即可推送到远程服务器
git push -u origin main
4、tag标签
- 4.1、添加一个tag,并推送到远程仓库
git tag -a 3.11.3.001 -m "release 3.11.3.001"
git push origin 3.11.3.001
- 4.2、 删除一个tag
git tag -d 3.11.3.001
git push origin :refs/tags/3.11.3.001
- 4.3、 查看tag
git tag
- 4.4、在某个commit上打tag
git tag test_tag c809ddbf83939a89659e51dc2a5fe183af384233
git push origin test_tag //!!!本地tag推送到线上
- 4.5、 根据tag创建分支
https://www.cnblogs.com/senlinyang/p/9455426.html
git branch newbranch 3.11.3.001
// 切换到分支
git checkout newbranch
Git 常用命令总结,将会持续更新的更多相关文章
- git常用命令合集(持续完善)
git常用命令合集(持续更新,仅为便于查阅) 上传整个项目 git init git add 项目名 git commit -m "提交的注释信息" 若已经绑定远程仓库,则直接:g ...
- Linux常用命令及工具记录(持续更新)
一.命令 convmv 作用:文件名的编码转换 安装:sudo apt-get install convmv 使用:convmv * -f gbk -t utf8 --notest c ...
- git常用命名:自用,持续更新
1.切换分支 git checkout -b dev origin/feature/迭代1.1 2.提交本地代码到github git init //初始化git git config --globa ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- 【github&&git】4、git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- 开发常用Git/Linux/idea命令快捷键总结(持续更新)
在开发过程中,会使用越来越多的命令,或快捷键,来帮助我们提高工作效率.本文记录了我在平时积累的常用命令,分享给大家. git命令 基本命令 set LESSCHARSET=utf-8 --idea T ...
- Git 常用命令 更新与提交
整理了一下Git 常用命令,这个版本还是比较好用的,最后附上个人终结版,帮助你快速上手. 取得Git仓库 初始化一个版本仓库 git init Clone远程版本库 git clone yourgit ...
- Git常用命令清单笔记
git github 小弟调调 2015年01月12日发布 赞 | 6收藏 | 45 5k 次浏览 这里是我的笔记,记录一些git常用和一些记不住的命令,这个笔记原本是基于 颜海镜的文章增加 ...
- 把git仓库从码云迁到github,及git常用命令
前言 刚开始建仓库的时候,因为网络的原因选择了国内的码云.后来又想换成github,毕竟平时github使用率比较高. 替换远程仓库地址方式如下: git remote set-url origin ...
- Ubuntu常用命令及git常用命令
1. CMakeLists.txt中指定OpenCV路径 set(OPENCV_DIR /***/***/opencv-2.4.9) 2. cmake工程编译安装 mkdir build cd bui ...
随机推荐
- 最新版大数据平台安装部署指南,HDP-2.6.5.0,ambari-2.6.2.0
一.服务器环境配置 1 系统要求 名称 地址 操作系统 root密码 Master1 10.1.0.30 Centos 7.7 Root@bidsum1 Master2 10.1.0.105 Cent ...
- 干货!!!测试如何确定是前端bug还是后端bug
目前的项目大多数都是前后端分离的,当我们发现bug后不知道指派给哪位开发,指派错了不仅影响解决bug 的效率,还容易被开发怼.最主要的是人家会认为你不专业,不专,不专呀.废话少说,上干货(踩过的坑)! ...
- cat常用参数
cat 命令格式 cat [选项] [文件] -A, --show-all:等价于 -vET. -b --number-nonblank:和 -n 相似,只不过对于空白行不编号. -e:等价于&qu ...
- Hi3559AV100外接UVC/MJPEG相机实时采图设计(一):Linux USB摄像头驱动分析
下面将给出Hi3559AV100外接UVC/MJPEG相机实时采图设计的整体流程,主要实现是通过V4L2接口将UVC/MJPEG相机采集的数据送入至MPP平台,经过VDEC.VPSS.VO最后通过HD ...
- HDOJ-1754(线段树+单点更新)
I Hate It HDOJ-1754 这道题是线段树简单的入门题,只是简单考察了线段树的基本使用,建树等操作. 这里需要注意的是输入要不使用scanf要不使用快速输入. 这里的maxs数组需要开大一 ...
- 开发过程中遇到的js知识点总结,面试题等,持续更新
1.Object.freeze() 方法用于冻结一个对象,即将对象设置为不可扩展.将对象的所有自有的属性和方法(包括Symbol值的属性和方法)配置为不可配置,不可写. Object.freeze( ...
- STL中常用容器及操作 学习笔记1
@[TOC](下面介绍STL中常见的容器及操作)## 不定长数组 vector> vetcor:其实就是一个数组或者说是容器 其操作不同于之前直接定义的数组 > 而且可以直接赋值也可以直接 ...
- 记录 Allsec 解题过程
开局打开URL:http://119.3.191.245:65532/#/allsecPlayGame,前去做游戏 游戏URL:http://119.3.191.245:8877/Login.php ...
- Nebula Storage 2.0 存储格式
随着 2.0 各版本的陆续发布,Nebula Graph 迎来了一系列的改动,在存储方面,影响最大的改动就是底层编码格式进行了修改.Nebula Graph 的底层存储是基于 KV 保存在 Rocks ...
- 翻译:《实用的Python编程》05_00_Overview
目录 | 上一节 (4 类和对象) | 下一节 (6 生成器) 5. Python 对象的内部工作原理 本节介绍 Python 对象的内部工作原理.来自其它语言的程序员通常会发现 Python 的类概 ...