Git 小白入门到进阶—(基本概念和常用命令)

一.了解 Git 基本概念和常用命令的作用 (理论)

基本概念

1、工作区
包含.git文件夹的目录,主要用存放开发的代码
2、仓库
分为本地仓库和远程仓库,本地仓库是自己电脑上的git仓库(.git文件夹);远程仓库是在远程服务器上的git仓库git文件夹无需我们进行操作,只需要执行相关命令即可。
3、暂存区(索引)
git文件夹中有很多文件,其中有一个index文件就是暂存区
4、已修改(modifed):修改了文件,但还没将修改的结果放到暂存区
5、已暂存(staged):对已修改文件的当前版本做了标记暂时保存,会包含在下次提交的列表中3、6、已提交(committed):文件已经安全地保存在本地的git仓库中
7、分支和标签
①、分支
git 有一个主分支- master 分支(包含了最稳定的版本),通常来说,一个分支用于一个新功能的开发,一旦新功能开发完成,就将这个分支合并到 master 上,然后删除这个分支。每个分支都可由 HEAD 指示,HEAD是一个指针,它永远指向分支中的最新提交内容。
②、标签
标签和分支很相似,不同的地方在于标签是不变动的。标签是一种没人去修改的分支。一旦为某个特定提交操作创造了一个标签,即使有新的提交操作,它也不会更新,开发者会给产品的发行版本创建标签(也是我们常说的打tag)。

Git 和 GitHub 的区别和关系如下:

1、Git 是工具,而 GitHub 是平台。
2、我们可以用 Git 之外的版本控制系统(比如 SVN)来向 GitHub 提交代码;同样可以用 Git 将代码提交到 GitHub之外的其他代码托管平台(比如企业级代码托管平台 GitLab)上。SVN 和 Git 是同类的工具,两者的用法很相似。但目前 Git 相对更主流一些,因此只学习 Git 足够了。 

工作流程

1、从远程仓库中克隆代码到本地仓库
2、本地仓库中分支进行代码修改
3、在提交前先将代码提交到暂存区
4、提交到本地仓库本
5、修改完成后,将代码push到远程仓库(之后的每次养成先pull再push的习惯)

二.能够使用 Git 命令来管理和提交项目代码 (实践)

1、创建远程仓库
在 GitHub 上创建一个新的远程仓库,获取仓库的 URL 地址
2、从本地仓库提交代码到远程仓库
①、在当前工作目录中初始化新仓库

git init

添加文件到本地暂存区中

git add

提交暂存区到本地仓库

git commit-m "提交说明"

连接远程仓库

git remote add origin 仓库地

提交之前先 pull

git pull origin 远程分支名:本地分支名

如果远程分支是与当前分支合并,则冒号后面的部分可以省略  git pull origin 分支名
提交到远程仓库

git push origin 本地分支名:远程分支名

如果本地分支名与远程分支名相同,则可以省略冒号 git push origin 分支名
强制推送可以使用 --force 参数

git push--force origin 分支名

3、从现有仓库克隆

git clone url
Git支持多种协议,默认的git://使用ssh,但也可使用https等其他协议。url地址可以为https:/lgithub/xx/xx/xx.git

添加当前目录的所有文件到暂存区

git add .

注意 . 前有空格

提交暂存区到本地仓库

git commit-m "提交说明"

提交之前先 pull

git pull origin 远程分支名:本地分支名

提交到远程仓库

git push origin 本地分支名:远程分支名

显示当前的Git配置

git config --list

编辑Git配置文件

git config-e[--global]

设置提交代码时的用户信息

git config--global user.name“用户名
git config--global user.email“郎箱地址

查看当前分支

git branch

查看仓库当前的状态,显示变更文件信息

git status

查看历史提交记录  git log

显示当前分支的最近几次提交 git reflog

下载远程仓库的所有变动

git fetch

下载特定远程仓库的所有变动

git fetch[远端仓库名]

下载远程仓库对应分支的变动

git fetch[远端仓库名][远端分支名称]

下载远程仓库对应分支的变动到本地分支

git fetch[远端仓库名][远端分支名称]:[本地分支名称]

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

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

相关文章

MaxKB,基于 LLM 大语言模型的知识库问答系统,开箱即用,支持快速嵌入到第三方业务系统。

MaxKB 是一款基于 LLM 大语言模型的知识库问答系统。MaxKB Max Knowledge Base,旨在成为企业的最强大脑。开箱即用,支持快速嵌入到第三方业务系统。 项目链接 github.com/1Panel-dev/MaxKB 项目介绍 MaxKB 是一款基于 LLM 大语言模型的知识库问答系统…

【C++】d1

关键字&#xff1a; 运行、前缀、输入输出、换行 运行f10 前缀必须项&#xff1a; #include <iostream> using namespace std; 输入/输出&#xff1a; cin >> 输入 cout << 输出 语句通过>>或<<分开 换行 endl或者"\n"

防火墙基础技术篇:ensp配置防火墙ssh方式登录

防火墙基础技术篇&#xff1a;ensp配置防火墙ssh方式登录 一、SSH 是什么 历史上&#xff0c;网络主机之间的通信是不加密的&#xff0c;属于明文通信。这使得通信很不安全&#xff0c;一个典型的例子就是服务器登录。登录远程服务器的时候&#xff0c;需要将用户输入的密码传…

TECHNIUM INTERNATIONAL: 利用 AI 和 TECHNIUM 矩阵协议引领区块链创新

在充满活力的加密货币和区块链技术领域&#xff0c;Technium International 以领军者的姿态迅速崛起&#xff0c;跻身科技巨头的顶尖行列。Technium International 成立于 2018 年&#xff0c;总部设于塞席尔&#xff0c;透过人工智慧&#xff08;AI&#xff09;和区块链技术的…

智能跳绳的产品体验与思考(一)

我&#xff0c;虽称不上跳绳高手&#xff0c;却对这项运动怀有深厚的热爱&#xff0c;也曾在某电商平台上选购过一款智能跳绳&#xff0c;希望能借此提升我的跳绳技巧。今天&#xff0c;咱们就来聊聊我和这条绳子的发生的一些故事&#xff0c;外加我的一些思考。 此刻&#xf…

揭秘python模块导入的“隐身术”:如何控制模块代码的执行?

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、引言&#xff1a;两个下划线的奥秘 二、案例展示&#xff1a;模块导入与代码执行 1. 导…

win11中文文件名称乱码解决方案

解压后出现以下的乱码 解决方案 步骤1.winR 输入intl.cpl 或 windows 自带的搜索搜“intl.cpl”&#xff0c;打开这个面板控制项 步骤2.在新打开的区域面板中&#xff0c;选择“管理”标签页&#xff0c;点击下方的“更改系统区域设置”按钮 步骤3.取消"Beta版…"选…

4步成功将三方库——speexdsp移植到OpenHarmony

四步实现三方库移植&#xff1a; 1、在Linux下编译要移植的三仓库&#xff0c;分析编译过程&#xff1b; 2、将要移植的三方库加入编译框架中以及产品引用&#xff1b; 3、增量编译出动态链接库和可执行文件推送到开发板上&#xff1b; 4、在开发板上验证移植是否成功、API接口…

greendao实现增删改查

说明&#xff1a;最近碰到一个需求&#xff0c;在安卓上使用greendao框架&#xff0c;实现增删改查数据 效果图&#xff1a; step1: // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript {repositories {go…

Kubernetes——监听机制与调度约束

目录 前言 一、监听机制 1.Pod启动创建过程 2.调度过程 1.指定调度节点 1.1强制匹配 1.2强制约束 二、硬策略和软策略 1.键值运算关系 1.硬策略——requiredDuringSchedulingIgnoredDuringExecution 2.软策略——preferredDuringSchedulingIgnoredDuringExecution …

QTreeWidget 详解

QTreeWidget 详解 QTreeWidget 是 PyQt5 框架中的一个重要部件&#xff0c;它提供了树形结构的视图&#xff0c;可以用于显示层级数据。以下是 QTreeWidget 的详细讲解&#xff0c;包括基本用法、主要方法和属性以及如何与其他组件进行交互。 基本用法 导入模块 要使用 QTree…

基于单片机的自行车里程监测系统的设计

摘 要 &#xff1a;本设计是一种基于单片机的自行车里程监测系统&#xff0c;采用 STC89C52RC 单片机为核心处理芯片&#xff0c;液晶显示器使用 LCD1602 &#xff0c; 速度测量使用霍尔传感器&#xff0c;温度传感器使用 DS18B20 &#xff0c;时间由时钟芯片 DS1302 进行…

增强创作者能力:The Sandbox 首届 “创作者挑战” 回顾

首届 "创作者挑战" 为创作者在平台上赚取收入提供了难得机会。 我们发起 “创作者挑战” 的目的是支持创作者&#xff0c;赋予他们构建元宇宙的能力。我们提出三大行动号召&#xff1a;发布、参与和赚钱。新推出的「参与奖池」&#xff08;Engagement Pool&#xff0…

云计算-Amazon S3

亚马逊S3&#xff08;Amazon S3&#xff09; 亚马逊S3是一种云对象存储设施。我们将使用的对象将是您在个人计算机上常用的文件。亚马逊S3产品旨在可扩展到实际无限数量的对象和无限大小的对象&#xff0c;但我们在本实验室的练习中只会使用少量对象。当存储许多对象时&#xf…

OpenCV学习 基础图像操作(十四):直方图均衡化和直方图规定化

基础原理 直方图操作是基于像素统计的基础图像操作,被广泛运用于调整图像的对比度,并由此衍生出很多变种和该经的方式. 图像相直方图 直方图(Histogram)&#xff0c;又称质量分布图&#xff0c;是一种统计报告图&#xff0c;由一系列高度不等的纵向条纹或线段表示数据分布的…

【强训笔记】day24

NO.1 思路&#xff1a;递归。 代码实现&#xff1a; class Solution { public:bool IsBalanced_Solution(TreeNode* pRoot) {return dfs(pRoot)!-1;}int dfs(TreeNode* root){if(rootnullptr) return 0;int leftdfs(root->left);if(left-1) return -1;int rightdfs(root-…

Vulnhub - AI-WEB-1.0靶机教程

目录 站点信息收集 c段扫描 端口扫描 目录扫描 漏洞利用 使用 burp 抓包 查询数据库名 查询数据库下的表 查询表中的字段名 查询字段中的数据 --os-shell 上传一句话木马 下载地址&#xff1a;https://download.vulnhub.com/aiweb/AI-Web-1.0.7z 我们从站点信息收…

【哈希】闭散列的线性探测和开散列的哈希桶解决哈希冲突(C++两种方法模拟实现哈希表)(1)

&#x1f389;博主首页&#xff1a; 有趣的中国人 &#x1f389;专栏首页&#xff1a; C进阶 &#x1f389;其它专栏&#xff1a; C初阶 | Linux | 初阶数据结构 小伙伴们大家好&#xff0c;本片文章将会讲解 哈希函数与哈希 之 闭散列的线性探测解决哈希冲突 的相关内容。 如…

Echarts圆环图偏移后 中心文字居中对齐实现

像上图中这样圆环图并不在div的中间时&#xff0c;中心的文本需要居中展示 一开始用left百分比但数据一旦变长或变短就会偏移 像这样 实在是太不美观了 所以我们这里使用动态的left通过文本的长度来计算 /*** 计算文本宽度* param {String|Number} text* param {String} font*…

js之图片上传

话不多说&#xff0c;直接上干货&#xff0c;注释在代码里面 下面是效果图和代码 <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-sca…