Git 入门使用

一、Git 入门

1.1 Git简介

  Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git是由Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

Git是目前世界上最先进的分布式版本控制系统,没有之一! 它可以让你追踪文件的变化,查看文件的历史记录,还原过去的状态,比较不同版本的文件,合并不同的版本等。这些功能对于团队协作开发非常重要。

Git与常用的版本控制工具CVS, Subversion等不同之处在于,它采用了分布式架构,每个开发者都拥有一个完整的版本库,可以在本地进行大部分操作,这使得Git在处理大型项目时具有更高的效率和灵活性。

1.2 Git安装 

本文使用的是Windows版本: 

Git - Downloads

1、安装路径

建议不要安装到c盘中,防止出现权限问题

 2、选择安装组件

3、选择开始菜单文件夹:方框内 Git 可改为其他名字,"Don't create a Start Menu folder" 打勾不要文件夹

 

4、选择 Git 默认编辑器:Git 安装程序里面内置了 10 种编辑器供你挑选,默认的是 Vim ,选择 Vim 后可以直接进行到下一步,但是 Vim 是纯命令行,操作有点难度,需要学习。如果选其他编辑器,则还需要去其官网安装后才能进行下一步。

 

5、决定初始化新项目(仓库)的主干名字:第一种是让 Git 自己选择,名字是 master ,但是未来也有可能会改为其他名字;第二种是我们自行决定,默认是 main。

6、图一:调整 path 环境变量  图二:选择 SSH 执行文件  图三:选择HTTPS后端传输 

 

 

7、图一:配置行尾符号转换  图二:配置终端模拟器以与 Git Bash 一起使用  图三:选择默认的 “git pull” 行为

      

8、图一: 选择一个凭证帮助程序  图二:配置额外的选项(只需选择第一项) 图三:安装成功            

1.3 创建码云仓库

1、首先需要注册一个gitee账号 

2、创建我的仓库

 

创建成功后一定要保存一下命令信息,因为只会出现一次。

 

二、Git 使用

2.1 git初始化操作

1、首先在本地新建一个文件夹也就是你的本地仓库用于存储代码,打开Git Bash Here终端

git config --global user.name "李文昊"
git config --global user.email "13670949+li-wenhao1234@user.noreply.gitee.com"

 此时c判断用户路径下会出现一个.gitconfig文件,用于git的全局配置

 2、创建git仓库,并将这个仓库标记为git所托管的本地仓库

mkdir 123
cd 123
git init 

3、将本地仓库与远程git仓库相关联,并提交到本地仓库

touch README.md
git add README.md
git commit -m "提交时的备注信息
"

4、 提交到远程仓库,并进行推送

git remote add origin https://gitee.com/li-wenhao1234/123.git
git push -u origin "master"

 刷新git仓库就可看到推送过来的文件了

2.2 代码上传

添加代码项目工程到git本地仓库(此时我利用文本文件为案例)

 

1、将内容从工作目录添加到暂存区:git add .(指令)

2、将所有通过 git add 暂存的文件提交到本地仓库:git commit (指令)

3、将本地仓库的记录提交到远程仓库: git push(指令)

2.3 代码下载

首先新建一个文件夹来保存下载的项目资源

1、下载代码需要拿到仓库的URL(如果是私有仓库还需要仓库拥有者提供账户和密码) 

指令:git clone [url]:克隆远程仓库到本地。

三、Git 常用命令

   git clone :将远程仓库clone到本地计算机。
   git status :展示工作区及暂存区域中不同状态的文件。
   git add :将内容从工作目录添加到暂存区。
   git commit :所有通过 git add 暂存的文件提交到本地仓库。
   git push :将本地仓库的记录提交到远程仓库。
   git reset HEAD <file> :从暂存区移除指定文件。
   git pull :拉取远程仓库的数据。
   git init

  git log:查看提交历史记录。
  git branch:查看分支列表。
  git checkout [branch]:切换到指定分支。
  git merge [branch]:将指定分支合并到当前分支。
  git remote add origin [url]:关联本地仓库与远程仓库。
  git diff:查看工作区与暂存区的差异。
  git reset [commit]:撤销提交,并将HEAD指针移动到指定的提交。
  git stash:将当前修改保存到临时存储区,以便切换分支或恢复后再次应用。

四、文件冲突错误

在一个小组正常使用git的时候会发生这样一种情况,比如张三和李四同时拉取了一个最新的项目,此时张三修改了其中的内容,然后提交到了码云,但是此时李四也修改了项目的内容,(此时他的项目和张三修改前的项目是一样的),这个时候,李四修改完成了之后也提交到码云,就会有一个错误,提示我们文件有冲突,然后我们就需要重新打开文件就会发现,李四所修改的内容和张三所修改的内容都出现在了文件上,此时我们就需要线下沟通保留谁的内容,留下需要的那部分,再此提交即可

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

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

相关文章

【自然语言处理】基于python的问答系统实现

一&#xff0c;文件准备 该问答系统是基于已知的问题和其一一对应的答案进行实现的。首先需要准备两个文本文件&#xff0c;分别命名为“question.txt”和“answer.txt”&#xff0c;分别是问题文件和答案文件&#xff0c;每一行是一个问题以及对应的答案。 问题文件: 中国的首…

vue前端实现多个url下载并合并为zip文件

一、安装 npm install jszip npm install file-saver 二、引入 import axios from axios import JSZip from "jszip"; import FileSaver from "file-saver"; 三、核心代码 videoData:[/video/26519f026fc012521605563015227403.mp4,/video/f7b9cdae14…

运营商大数据精准获客:我们提供精准客源渠道的最大资源体?

运营商大数据精准营销 谈起精准获客&#xff0c;竞争对手永远是为我们提供精准客源渠道的最大资源体&#xff01; 最新的获客方式&#xff0c;就是从竞争对手的手中把他们的精准客户资源变为自己的。 今年最火的运营商大数据精准营销是拒绝传统营销方式的烧钱推广&#xff0…

无人机航迹规划:七种智能优化算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划--提供MATLAB代码

一、七种算法&#xff08;DBO、LO、SWO、COA、LSO、KOA、GRO&#xff09;简介 1、蜣螂优化算法DBO 蜣螂优化算法&#xff08;Dung beetle optimizer&#xff0c;DBO&#xff09;由Jiankai Xue和Bo Shen于2022年提出&#xff0c;该算法主要受蜣螂的滚球、跳舞、觅食、偷窃和繁…

【STM32】TIM2的PWM:脉冲宽度调制

PWM是一种周期固定&#xff0c;脉宽可调整的输出波形。 0.通用寄存器输出 1.捕获/比较通道1的主电路--中间部分 2.捕获/比较通道的输出部分--输出 3.通用定时器输出PWM原理 PWM波周期或者频率由ARR&#xff08;就是要进递增/递减的值&#xff09;决定&#xff0c;PWM波占空比由…

力扣每日一题 ---- 2906. 构造乘积矩阵

这题很简单(一下就能想到是前缀和的提米)&#xff0c;但是在处理12345上面需要仔细一点&#xff0c;本来我最开始想到的时候全部累乘在除掉当前数&#xff0c;但是这样就没有把12345考虑进去&#xff0c;如果他本身是12345的话&#xff0c;那么除他以外的乘积并不一定是0&#…

前端缓存机制——强缓存、弱缓存、启发式缓存

强缓存和弱缓存的主要区别是主要区别在于缓存头携带的信息不同。 强缓存&#xff1a; 浏览器发起请求&#xff0c;查询浏览器的本地缓存&#xff0c;如果找到资源&#xff0c;则直接在浏览器中使用该资源。若是未找到&#xff0c;或者资源已过期&#xff0c;则浏览器缓存返回未…

Pytest插件

官方文档&#xff1a;API Reference — pytest documentation BaseReport 定义Case结果输出 >>> from _pytest.reports import TestReport >>> test TestReport(1,1,1,pass,,running) >>> print(dir(test)) [__annotations__, __class__, __delatt…

基础课26——业务流程分析方法论

基础课25中我们提到业务流程分析方法包括以下几种&#xff1a; 价值链分析法&#xff1a;主要是找出或设计出哪些业务能够使得客户满意&#xff0c;实现客户价值最大化的业务流程。要进行价值链分析的时候可以从企业具体的活动进行细分&#xff0c;细分的具体方面可以从生产指…

UserAgent使用隧道HTTP代码示例

首先&#xff0c;我们需要安装一个Perl模块来处理HTTP请求&#xff0c;然后&#xff0c;我们需要配置代理信息&#xff0c;如proxy_host和proxy_port。接下来&#xff0c;我们可以使用正则表达式来解析网页内容并提取我们需要的信息。最后&#xff0c;我们可以将这些信息存储到…

基于DevEco Studio的OpenHarmony应用原子化服务(元服务)入门教程

一、创建项目 二、创建卡片 三、应用服务代码 Index.ets Entry Component struct Index {State TITLE: string OpenHarmony;State CONTEXT: string 创新召见未来&#xff01;;build() {Row() {Column() {Text(this.TITLE).fontSize(30).fontColor(0xFEFEFE).fontWeight(…

java版本转换小工具

工作之余写了一个转换小工具&#xff0c;具有以下功能&#xff1a; 时间戳转换Base64编码/解码URL编码/解码JSON格式化 时间戳转换 package org.binbin.container.panel;import javax.swing.*; import java.awt.*; import java.text.DateFormat; import java.text.SimpleDat…

【pytest】html报告修改和汉化

前言 Pytest框架可以使用两种测试报告&#xff0c;其中一种就是使用pytest-html插件生成的测试报告&#xff0c;但是报告中有一些信息没有什么用途或者显示的不太好看&#xff0c;还有一些我们想要在报告中展示的信息却没有&#xff0c;最近又有人问我pytest-html生成的报告&a…

[论文阅读]PV-RCNN++

PV-RCNN PV-RCNN: Point-Voxel Feature Set Abstraction With Local Vector Representation for 3D Object Detection 论文网址&#xff1a;PV-RCNN 论文代码&#xff1a;PV-RCNN 简读论文 这篇论文提出了两个用于3D物体检测的新框架PV-RCNN和PV-RCNN,主要的贡献如下: 提出P…

Figma转Sketch文件教程,超简单!

相信大家做设计的都多多少少听过一点Figma和Sktech&#xff0c;这2个设计软件是目前市场上很受欢迎的专业UI设计软件&#xff0c;在全球各地都有很多粉丝用户。但是相对来说&#xff0c;Figma与Sketch只支持iOS系统有所不同&#xff0c;Figma是一个在线设计软件&#xff0c;不限…

IBM Qiskit量子机器学习速成(一)

声明&#xff1a;本篇笔记基于IBM Qiskit量子机器学习教程的第一节&#xff0c;中文版译文详见&#xff1a;https://blog.csdn.net/qq_33943772/article/details/129860346?spm1001.2014.3001.5501 概述 首先导入关键的包 from qiskit import QuantumCircuit from qiskit.u…

HackTheBox-Starting Point--Tier 2---Base

文章目录 一 题目二 过程记录2.1 打点2.2 权限获取2.3 横向移动2.4 权限提升 一 题目 Tags Web、Vulnerability Assessment、Custom Applications、Source Code Analysis、Authentication、Apache、PHP、Reconnaissance、Web Site Structure Discovery、SUDO Exploitation、Au…

lua脚本实现redis分布式锁(脚本解析)

文章目录 lua介绍lua基本语法redis执行lua脚本 - EVAL指令使用lua保证删除原子性 lua介绍 Lua 是一种轻量小巧的脚本语言&#xff0c;用标准C语言编写并以源代码形式开放&#xff0c; 其设计目的是为了嵌入应用程序中&#xff0c;从而为应用程序提供灵活的扩展和定制功能。 设…

Ubuntu 创建用户

在ubuntu系统中创建用户&#xff0c;是最基本的操作。与centos7相比&#xff0c;有较大不同。 我们通过案例介绍&#xff0c;讨论用户的创建。 我们知道&#xff0c;在linux中&#xff0c;有三类用户&#xff1a;超级管理员 root 具有完全权限&#xff1b;系统用户 bin sys a…