首页 > 其他分享 >git 开发常用命令

git 开发常用命令

时间:2023-07-03 10:56:16浏览次数:42  
标签:tagName git 本地 tag 开发 常用命令 commit 分支

image

git 中的代码,整个的流程就是上图显示的那样,代码可能会经历最多4个地方会被推送到远程
大致流程:clone 克隆远程文件到本地 => 通过编辑器编辑本地的代码(即在工作区) => pull 拉下远程的代码,可能有人提交代码到同分支 => add 添加到暂存区 => commit提交到本地仓库=> push 推送到远程仓库
// 简单理解 
// workspace 工作区,就是你的编辑器打开的文件
// staging area 暂存区  介于工作区和本地仓库之间暂时存放代码的地方
// local repository 本地仓库 
// remote repository 远程仓库 

 

1. 基本流程命令
1.1 git init // 如果需要新建一个 git 仓库
1.2 git clone url // 克隆远端文件 url 远程仓库的地址
1.3 git checkout branchName // 切换git分支,branchName 分支名称
1.4 git pull // 假设你已经在现在的分支上修改了东西要提交,pull 拉下该分支最新的远程代码,一块提交,不然有可能会把别人已经推送到这个分支的东西搞没了(会被骂)
1.5.1 git add filePath // 单个文件添加到暂存区, filePath 单个文件路径
1.5.2 git add . // . 代表全部,全部添加到暂存区
1.6 git commit -m '描述内容' // 推送到本地仓库,并写上备注(改了啥东西)
1.7 git push origin branchName // branchName 远程分支名,推送到远程分支

 

2.新建及切换分支
2.1 git branch newBranch // 新建一个本地分支 newBranch为分支名,新分支基于当前分支创建
2.2 git push origin newBranch // 把新建的本地分支推送到远程,分支名称和新建的本地分支一致,远程就新建了一个分支
---------------------------------------------------
2.3 git checkout branchName // 切换本地分支
2.4 git fetch // 如果在远程创建了新分支,本地可以通过git fetch 来获取最新的远程分支

 

3.删除分支
3.1 git branch -D branchName // 强制删除本地指定分支
3.2 git branch -d branchName // 删除本地分支   会检查有没有和上游分支 合并
3.3 git push origin --delete branchName // 删除远程分支

 

4.查看分支及常用的查看功能
4.1 git branch // 查看所有本地分支
4.2 git branch -r // 查看所有远程分支
4.3 git branch -a // 查看所有本地和远程分支
------------------------------------------
4.4 git status // 查看git状态,当前所在分支及该分支什么状态,待添加 or 待提交 or 待推送 or 有冲突待解决等
4.5 git diff // 查看工作区和暂存区(add)的差异
4.6 git diff filePath // 查看指定文件工作区和暂存区的差异,filePath文件路径,可以通过git status 查看
4.7 git log // 查看提交(commit)记录
4.8 git show commit-id // 查看指定提交的内容 commit-id ,每次提价生成的commit值,可以通过git log 查看

 

5.合并分支
5.1 git merge branchName // 合并本地branchName到当前分支

 

6.撤销 回退
--------撤销工作区的更改--------
6.1 git checkout -- filePath // 撤销工作区指定文件的更改,filePath,文件路径都可通过 git status查看
6.2 git checkout . // 撤销工作区所有更改
--------撤销暂存区的更改--------
6.3 git reset HEAD filePath // 撤销上次add指定的文件更改
6.4 git reset HEAD . // 撤销上次add的全部更改
--------回退本地仓库--------
6.5 git reset --hard HEAD^ //  回退到上次commit状态
6.6 git reset --hard commit-id // 回退到指定的commit,commit-id可通过git log 查看
--------完整的回退仓库操作--------
6.7 git branch newBranch // 本地创建新的分支,备份,防止回退有问题
6.8 git reset --hard commit-id // 重置到指定的commit提交,重置到改提交后,后面的提交记录会去除
6.9 git push -f origin branchName // 强制推送到远端

 

7. 取消git跟踪
7.1 git rm --cached filePath // 取消 对file的git跟踪,filePath 文件路径, 并在.gitignore 文件中添加 不想跟踪的该文件
7.2 git rm --f filePath //  删除filePath的跟踪,并且删除本地文件。

 

8.新建tag (一版用 tag 标记已发布的版本)
8.1 git tag tagName // 创建本地最后一次提交的commit 标签,tagName 标签名,
8.2 git tag tagName commit-id // 创建指定提交的标签,tagName 标签名,commit-id 提交的commit-id,可通过git log 查看,
8.3 git tag -a tagName -m '标签备注' // 创建一个带有备注的tag标签,tagName 标签名,-m 后面跟备注信息
8.4 git push origin tagName // 推送tag到远程,tagName 远程tag名,和本地tag保持一致

 

9. 查看tag,切换tag
9.1 git tag // 查看本地已有tag标签列表
9.2 git show tagName // 查看指定tag名的详情信息
9.3 git checkout tagName // 切换指定的tag
9.4 git checkout -b newBranch tagName // 检出指定的tag,并创建本地新的分支newBranch

 

10. 删除tag
10.1 git tag -d tagName // 删除本地tag
10.2 git push origin :refs/tags/tagName // 删除远程tag,tagName 远程标签名

 

上面总结的能满足日常开发中大部分功能.

 

转发  https://www.cnblogs.com/toBeYoung/p/15344606.html

标签:tagName,git,本地,tag,开发,常用命令,commit,分支
From: https://www.cnblogs.com/Esther-yan/p/17522231.html

相关文章

  • PyCharm Pro 2023 mac|Python编辑开发
    Python是一种很流行的编程语言,主要用于计算机编程。Python程序语言是一个基于对象的脚本语言,在应用程序中,它使用自然语言作为标记,其中自然语言可以被翻译成机器语言。Python脚本具有高效、快速、可扩展性好的特点。通过在计算机上运行的脚本,可以在浏览器中打开各种文件和窗口,就像......
  • Git生成ssh密钥及配置
    由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSHkey,在此之前,必须要生成SSHkey。第1步:创建SSHKey。在windows下查看[c盘->用户->自己的用户名->.ssh下是否有id_rsa、id_rsa.pub文件,如果没有需要手动生成。在开始菜单中打开git下的gitb......
  • Linux PWM 开发指南
    LinuxPWM开发指南1概述1.1编写目的介绍PWM模块的详细设计方便相关人员进行PWM模块的代码设计开发。1.2使用范围适用于Linux-3.10,linux-4.4和Linux-4.9内核,Linux-5.4内核。1.3相关人员PWM驱动的开发人员/维护人员等2术语及概念2.1术语定义及缩略语术语解释说明Sun......
  • Linux NOR 开发指南
    LinuxNOR开发指南1简介编写目的此文档描述SunxiNOR模块的使用方法,为相关人员调试提供指导适用范围boot0:适用于brandy-2.0u-boot:适用于u-boot-2018kernel:适用于linux-4.9/linux-5.4内核BSP的开发人员、测试人员2模块介绍2.1模块功能介绍Linux中SPINOR体系结构......
  • SPINAND UBI 离线烧录 开发指南
    SPINANDUBI离线烧录开发指南1概述编写目的:介绍SunxiSPINand烧写时的数据布局2名词解释词义UBIunsortedblockimagePEBphysicaleraseblockLEBlogicaleraseblockPEB和logicalblock关系1PEB=1logicalblock1logicalblock=2physicalblocks3总体数据布局ub......
  • Tina_Linux_系统裁剪_开发指南
    文章目录Tina_Linux_系统裁剪_开发指南1概述2Tina系统裁剪简介2.1boot0裁剪2.2uboot裁剪2.3内核裁剪2.3.1删除不使用的功能2.3.2删除不使用的驱动2.3.3修改内核源代码2.3.3.1size工具.2.3.3.2ksize.py脚本2.3.3.3nm命令2.3.3.4kernel压缩方式.2.4文件系统裁剪.2.4.1......
  • 全志Tina Linux SPINAND UBI 离线烧录 开发指南 支持百问网T113 D1-H哪吒 DongshanPI-
    1概述编写目的:介绍SunxiSPINand烧写时的数据布局2名词解释词义UBIunsortedblockimagePEBphysicaleraseblockLEBlogicaleraseblockPEB和logicalblock关系1PEB=1logicalblock1logicalblock=2physicalblocks3总体数据布局ubi方案FLASH上的数据布局sys_pa......
  • 好用到飞起的新项目「GitHub 热点速览」
    虽然本周GitHub热榜都是一些熟悉的面孔,但还是有不少新开源的项目,比如受启发于StripeIDs的UUIDv7扩展typeid,相信有了它,数据标识问题就迎刃而解了。此外,还有刚开源就获得近2kstar的抠背景项目background-removal-js,一键就能去掉图片背景。还有一个非常有意思的IDE,它......
  • Android开发_开启子线程执行耗时操作
    Activityactivity=(Activity)getContext();newThread(newRunnable(){@Overridepublicvoidrun(){activity.runOnUiThread(newRunnable(){@Overridepublicvoidrun(){//在这执行耗时操作......
  • 如何把本地项目初始化到gitLab上去,干货分享!!
    说明:1.适用范围(高手请忽略)例如:你本地已经有一个项目了(或者别人发一个项目给你),但是你需要把这个项目托管到你的gitLab上去操作步骤:1.首先在你的gitLab上建一个空的工程目录(很简单,百度一下),建好之后看到应该是这个样子的,上面也有对应的使用说明,教你如何把本地项目上传文件到git......