Git系列:入门必备指令详解

news2024/11/23 15:37:39

Git系列:入门必备指令详解

    • 总览
    • 高频指令
    • 参考资料

总览


常用指令使用流程如下图:

  • workspace:工作区
  • staging area:暂存区/缓存区
  • local repository:版本库或本地仓库
  • remote repository:远程仓库

——引用自:《菜鸟教程之Git操作》

高频指令


常见必备指令操作:

  • git clone
  • git add
  • git commit
  • git pull
  • git push
  • git branch
  • git checkout
  • git status
  • git diff

注意,指令举例中[]里表示需自行修改的内容,实际应用时不用带方括号[]

git clone

  • 功能:克隆远端服务器的版本库到本地
  • 指令1:git clone [ssh/https]
  • 释义:克隆代码仓到本地,可用ssh地址或https地址
  • 指令2:git clone [ssh/https] -b [branch_name]
  • 释义:克隆远端仓到本地,并切换到分支branch_name
    • -b为branch的缩写
    • branch_name可替换为相应分支名,如master/dev

git add

  • 功能:提交工作区内容到暂存区
  • 指令1:git add .
  • 释义:将工作区所有代码修改提交到暂存区
    • 工作区,为本地直接可见的文件
    • 暂存区,.git目录下的内容,主要为目录索引,不直接可见
  • 指令2:git add [file_name]
  • 释义:将工作区特定文件的代码修改提交到暂存区
    • 实例如,git add main.c

git commit

  • 功能:提交暂存区内容到本地版本库
  • 指令1:git commit -m [comment]
  • 释义:将工作区所有代码修改提交到暂存区
    • -m为注释内容comment
    • 实例比如,git commit -m "init version"
  • 指令2:git commit --amend
  • 释义:强制在上一次commitid中提交新的暂存区内容
    • 将本地新的修改从暂存区添加到版本库中
    • 可修改上一次的commitid注释

git pull

  • 功能:拉取远端仓库代码并与本地版本库合并
  • 指令1:git pull或者git pull [origin]
  • 释义:将远端origin的所有分支拉取并合并到本地
    • git pull默认将远端主机origin相关代码拉到本地
    • origin可改为其他远程主机名,拉到本地并合并
  • 指令2:git pull origin [master]:[dev]
  • 释义:将远端origin的master分支拉取并合并到本地dev分支
    • 若master后面省略,即表示将远端master合并到当前分支,如git pull origin master

git push

  • 功能:推送本地版本库到远端仓库代码并合并
  • 指令1:git push <远程主机名origin> <本地分支名master>:<远程分支名dev>
  • 释义:将本地分支dev推送到远程主机origin的远程分支master
    • 实例如,git push origin [master]:[dev]
    • 若本地分支名与远程分支名相同,可省略:及以后的内容
    • 如:git push origin master
  • 指令2:git push -f <远程主机名origin> <本地分支名master>
    • 示例如git push -f private br_ft,强制将本地版本库推送到远端private主机的br_ft分支

git branch

  • 功能:创建、切换、查看相应分支
  • 指令1:git branch
  • 释义:查看当前所处分支及本地分支名
    • 如加指令:git branch -a,查看包含远端的所有分支
  • 指令2:git branch [branch_name]
  • 释义:创建并切换到相应分支branch_name
    • 若已存在某分支,则需要用checkout指令来切换
  • 指令3:
  • 释义:查看当前所处分支

git checkout

  • 功能:切换分支
  • 指令1:git checkout [branch_name]
  • 释义:切换分支到branch_name

git status

  • 指令1:git status
  • 释义:查看上次commit提交后文件的修改
    • 之后加参数-s,如指令:git status -s ,获得简短输出结果,s表示short

git diff

  • 功能:显示暂存区和工作区的文件差异
  • 指令1:git diff
  • 释义:查看还未添加到暂存区的本地文件修改
    • 之后加参数--stat,如指令:git diff --stat ,查看新增代码修改行数及相关改动文件
    • 要查看add和commit后的文件版本差异,需要用git log来查看
  • 指令2:git diff [file_name]
  • 释义:查看指定文件的前后修改差异

git log

  • 功能:查看commit日志
  • 指令1:git log
  • 释义:查看上次commit历史log及commitID、注释
    • 添加参数--stat,如指令:git log --stat
    • 可查看各提交版本修改了哪些文件、及新增和删除的代码行数

参考资料


  1. 菜鸟教程:Git入门,link

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/168993.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

线程学习笔记

线程 出现原因 MP3多个模块放在一个进程中&#xff0c;CPU处理能力&#xff0c;播放可能不连续&#xff1b;放在多个进程中&#xff0c;资源传递、进程维护等开销很大 进程相比于进程&#xff0c;地址空间直接共享 定义 线程是进程的执行流程&#xff0c;除了线程&#xf…

WPF之调用Iconfont

一、调用iconfont 1、首先再Iconfont中新建一个项目&#xff0c;注意修改font family 2、将在线的icon添加到项目中 3、下载安装包到本地 4、更改本地的fontfamily格式如下‘./路径文件夹名/#***’ ***是指再iconfont中的fontfamily 注意如果显示为口 可能是路径不对 如果…

数据结构——栈和队列

目录 一、栈&#xff08;Stack&#xff09; 1、定义 2、顺序结构模拟实现栈和常用方法 &#xff08;1&#xff09;.栈的顺序存储 &#xff08;2&#xff09;.基本方法 3、栈的链式结构与顺序结构对比 &#xff08;1&#xff09;.对比 4、区分概念 &#xff08;1&#x…

JavaScript 库之 vanilla-tilt(一个平滑的 3D 倾斜库)

JavaScript 库之 vanilla-tilt&#xff08;一个平滑的 3D 倾斜库&#xff09;参考获取vanilla-tilt特点使用示例使用1. data-tilt2. VanillaTilt.init()优先级示例配置选项其他参考 项目描述GitHub前往Vanilla-tilt.js前往 获取 Vanilla-tilt.jsGitHubnpm npm install vanil…

【开发环境】JRE 裁剪 ② ( 裁剪 bin 目录下的 dll 动态库文件 | 压缩 rt.jar 文件 )

文章目录一、裁剪 lib 目录下的 jar 文件二、压缩 rt.jar 文件参考博客 : 精简jre1.8精简jre步骤裁剪JRE(嵌入式设备的java环境移植) 资源下载地址 ( 本篇博客的资源快照 , 不是最终版的裁剪效果 ) : https://download.csdn.net/download/han1202012/87389091 JRE 裁剪分为三…

Pytorch深度学习【十五】

微调 网络架构 一个神经网络一般可以分成两块 特征抽取将原始像素变成容易线性分割的特征线性分类器来做分类 微调 思路—将相同功能的网络及其参数直接进行迁移使用&#xff0c;而并不是通过重新学习&#xff0c;只改变部分层次即可 训练 是一个目标数据集上的正常训练任务…

老杨说运维 | 2023,浅谈智能运维趋势(二)

&#xff08;文末附视频&#xff0c;一键观看精彩内容&#xff09; 前言&#xff1a; 上文提到了智能运维现状中的变化趋势以及 上文提到了智能运维现状中的变化趋势以及过往误区&#xff0c;老杨认为智能运维的体系化建设还需从抓牢数据治理为起点&#xff0c;以终为始做好规…

miniconda虚拟环境安装使用jupyter notebook及相关

一、安装jupyter 1创建miniconda虚拟环境。&#xff08;前面文章讲过了&#xff09; 2在创建的虚拟环境下&#xff0c;conda install ipython jupyter 3在该环境下执行jupyter notebook。 注意&#xff1a;此时打开的jupyter notebook内核Python 3(ipykernel)对应该虚拟环境&am…

数据安全治理 1

数据安全治理应以数据为中心&#xff0c;多元化主体共同参与&#xff0c;兼顾发展与安全。 数据安全总体视图&#xff0c;包含了体系&#xff0c;维度&#xff0c;目标&#xff0c;实践。 制度建设 技术体系&#xff0c;如加密、脱敏等手段&#xff0c;进行数据全生命周期的管…

盘点:2022年豆瓣评分8.0以上的计算机书籍有哪些?

2022年已经结束 &#xff0c;小编来盘点一下过去一年里出版的计算机图书里&#xff0c;有哪些计算机书籍是豆瓣评分8.0以上图书。 1、人工智能&#xff1a;现代方法&#xff08;第4版&#xff09;&#xff08;上下册&#xff09; ​ 系统性总结人工智能的方方面面&#xff0c;…

寒假每日一题2023——4261. 孤独的照片

写在前面 题目来源&#xff1a;AcWing 寒假每日一题2023活动 链接&#xff1a;https://www.acwing.com/problem/content/description/4264/ 题目 Farmer John 最近购入了 N 头新的奶牛&#xff0c;每头奶牛的品种是更赛牛&#xff08;Guernsey&#xff09;或荷斯坦牛&#x…

论文解读12——NGBoost: Natural Gradient Boosting for Probabilistic Prediction

目录1、文章贡献2、评分规则3、自然梯度4、自然梯度提升算法NGBoost1、文章贡献 由吴恩达团队提出的NGBoost是一种通过梯度提升进行概率预测的算法&#xff0c;与经典的回归模型返回一个点估计结果不同&#xff0c;概率回归模型返回全概率分布&#xff0c;将条件分布的参数视为…

Windows系统安装jenkins服务 war包形式

1.首先下载 jenkins war包 注意和jdk 的版本匹配 https://www.jenkins.io/zh/download/ 2.配置jenkins环境变量 如果不配置环境变量, jenkins的主目录默认生成在c盘下 环境变量怎么配? 请自行百度 3.运行jar包 注意修改war包路径 java -jar /data/jenkins/jenkins.war…

DNS原理与搭建(一)

文章目录一、DNS的概念与原理二、DNS私服搭建一、DNS的概念与原理 概念 DNS指的是域名服务器&#xff0c;就是将域名转换成IP[或者将IP转换成域名];当我们在浏览器中输入域名并按下回车&#xff0c;会对我们输入的域名进行解析&#xff0c;并返回一个IP地址&#xff0c;在通过…

Deepin系统深度学习环境配置指南

Deepin深度操作系统在众多Linux发行版本中深受欢迎&#xff0c;在实用性和专业方面到达了很好的均衡&#xff0c;该系统软件适配丰富支持很多第三方软件&#xff0c;增加了系统任务的灵活性。在装好该系统后&#xff0c;如何在该系统上进行深度学习代码训练调试&#xff0c;这就…

网络编程.

文章目录一、概述通信要素一&#xff1a;IP和端口号IP端口号通信要素二&#xff1a;网络协议TCP网络编程UDP网络编程URL网络编程每日一考一、概述 1、网络编程中两个主要问题&#xff1a; 如何定位网上的一台或多台主机&#xff0c;定位主机上的特定应用 找到主机后&#xff0…

北京化工大学1/17寒假集训题解(>1800)

目录 A - 文艺平衡树 B - 可持久化文艺平衡树 C - 可持久化平衡树 主要思路&#xff1a;FHQ Treap 可持久化 D - 维护数列 初始化 Insert操作 Delete操作 Reverse操作 Make-Same操作 Get-Sum操作 Max-Sum操作 懒标记的处理 E - 文本编辑器 A - 文艺平衡树 这里的…

贪心策略(二)兑换零钱(最后还得是动规)

兑换零钱(一)_牛客题霸_牛客网 兑换零钱(二)_牛客题霸_牛客网 兑换零钱(一)_牛客题霸_牛客网 描述 给定数组arr&#xff0c;arr中所有的值都为正整数且不重复。每个值代表一种面值的货币&#xff0c;每种面值的货币可以使用任意张&#xff0c;再给定一个aim&#xff0c;代表要…

C++程序设计——类和对象II

一、再谈构造函数 1.构造函数体赋值 在创建对象时&#xff0c;编译器通过调用构造函数&#xff0c;给对象中各个成员变量赋一个合适的初始值。 虽然上述构造函数调用后&#xff0c;对象中已经有了初始值&#xff0c;但是不能将其称之为类对象成员的初始化&#xff0c;构造函数…

Vue学习笔记(三)

Vue学习笔记三1.组件的引入及使用2.插槽3. 插槽三种写法3.1 第一种3.2 第二种3.3 第三种简化写法4.组件生命周期4.Vue路由1.组件的引入及使用 在components中写入组件Header.vue 在App.vue中进行引入 <template><div><!-- 组件化: 1个页面由不同的部分组合而…