版本控制系统-Git

news2024/11/24 14:22:39

目录

1. Git简介

2. 下载及安装

3.命令行操做

3.1全局设置

3.2初始化仓库

3.3提交代码

3.4查看提交历史

3.5推送代码 

3.6拉取合并代码

3.7克隆仓库

3.8. 配置忽略文件 

3.9. 凭据管理

 4. GUI工具操作

4.1. 全局设置 

4.2. 初始化仓库 

4.3. 提交代码

 输入提交日志并提交

4.4. 推送代码 

9. 异常问题处理

9.1. git push失败


1. Git简介

当涉及到软件开发或协作时,版本管理是一个不可或缺的概念。无论你是一个独立开发者还是一个团队成员,都会遇到需要跟踪和管理代码变更的情况。这时候,Git作为一个强大而流行的版本控制系统就发挥着重要的作用。

Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助社区管理Linux内核而开发的一个开放源码的版本控制软件。2005年7月份,Linus花了两周时间自己用C写了第一个版本分布式版本控制系统。

Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper

Git是目前世界上最先进的(没有之一)分布式版本控制系统

Add:这里的Add不只是新增文件,包含所有对文件的操作(新增、修改、删除)。同样,Commit也是如此。

Push:将所有的Commit推送给服务器

Pull:将服务器新的Commit(可能是别人提交的,或者自己另一台设备提交的)拉取下来

 

2. 下载及安装

git官方下载地址:Git - Downloads,下载64位安装版。

3.命令行操做

Git常用命令-CSDN博客

3.1全局设置

配置(config)用户名和邮箱(git仓库网站上的注册邮箱)
查看现有配置


3.2初始化仓库

创建新的本地仓库,首先创建一个目录git_test,然后在控制台进入该目录,执行初始化(init)

git init # 在指定目录初始化git本地仓库

可以通过如下命令查看仓库当前状态

git status

3.3提交代码

目录git_test中创建一个文件README.md,提交(commit)该文件

git add README.md # 或 git add .

git commit -m "第一次提交" # -m 后的提交日志必须要写

此时,我们的代码就拥有了历史记录,可以在本地随时回退到历史的版本。不要任何互联网操作。
可以使用git add .将未被版本管理的文件纳入到版本管理系统。

3.4查看提交历史

git log

3.5推送代码 

如果需要永久保存代码,或者想用其他电脑获取代码,或分享给同事进行共同开发,才需要联网,把代码推送到一个公共网络的代码仓库里。
将本地仓库与远程仓库git_test_first关联起来,随后推送(push)过去

git remote add origin https://gitee.com/asnheng/git_test_01.git

git push -u origin "master"

此时,我们的代码在远程服务器(名字叫origin)也有一个永久的备份了
本地可以添加多个远程仓库,如果只有一个,名字建议使用origin
可以通过git remote -v查看有哪些远程仓库链接

3.6拉取合并代码

如果远程仓库的代码被别人修改并推送了,或者自己在其他电脑上修改推送了,则可以把那些修改拉(pull)下来,并与本地的代码进行合并。

git pull

3.7克隆仓库

我们可以去开源平台上clone别人的代码,同样的,如果你的代码仓库是公开的,则别人可以下载到你的代码。

git clone https://gitee.com/asnheng/git_test_01.git

 

3.8. 配置忽略文件 

有一些临时文件不需要被提交,例如windows下的.swp,苹果下的.DS_Store。则可以通过在根目录的.gitignore文件中添加描述,对这些文件进行忽略

# 忽略所有.swp结尾的文件
*.swp

# 忽略指定文件
打包.zip

# 忽略目录
.idea/

3.9. 凭据管理

向git管理网站push代码时,首次需要输入账号和密码,后边会自动保存,如果需要查看、修改、删除。可打开Windows凭据管理。

  1. 点开始按钮(按下Windows键),搜索“凭据管理器”

    2.点击Windows凭据,可对普通凭据里之前输入的用户名密码进行编辑和删除操作  

 4. GUI工具操作

可以通过安装GUI客户端,替代大量的命令行操作,Git官方也推荐了很多GUI工具:Git - GUI Clients

我们这里推荐使用TortoiseGit(小乌龟):TortoiseGit – Windows Shell Interface to Git 支持中文

  • 请下载64-bit Windows最新版客户端
  • 请下载对应的 Chinese, simplified 简体中文汉化包

4.1. 全局设置 

4.2. 初始化仓库 

直接点确定 

4.3. 提交代码

在仓库中按住Shift按鼠标右键

 输入提交日志并提交

4.4. 推送代码 

 

9. 异常问题处理

9.1. git push失败

错误截图1:

说明远程仓库已经初始化过了(新建仓库时,勾选了初始化README.md等文件),需要先git pull才能推送。此时由于本地也初始化过,所以建议在一个空的目录把远程仓库clone下来,然后把项目代码拷贝进去再提交推送。

或者使用TortoiseGit进行pull操作,然后点击【合并非相关历史】:

错误截图2: 

注册账户时不能勾选隐藏email,否则无法推送代码。 

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

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

相关文章

Gone框架介绍3 - 使用gone命令,自动生成Priest函数

文章目录 1. 安装辅助工具: gone2. 创建一个名为gen-code的新项目3. 创建Goner4. 使用辅助工具5. 添加main函数 我在两年前实现了一个Golang的依赖注入框架,并且集成了gin、xorm、redis、cron、消息中间件等功能,自己觉得还挺好用的;之前一直…

Jenkins首次Build,配置Git,Maven,JDK,凭证管理

系列文章目录 文章目录 系列文章目录前言前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudso…

有哪些好用电脑端时间定时软件?桌面日程安排软件推荐 桌面备忘录

随着现代生活节奏的加快,人们对于时间管理和任务提醒的需求越来越大。为了满足这一需求,市场上涌现出了众多桌面便签备忘录软件,它们不仅可以帮助我们记录待办事项,还能定时提醒我们完成任务。在这篇文章中,我将为大家…

宝子们,到我选Offer了

A. 腾讯IEG光子 游戏客户端 Base 深圳 优点: 1. Title可以,是IEG正经游戏工作室 2. 这可是鹅啊,可以吟唱《作废》歌 缺点: 1. 离得远 要租房 2. 5000HC 转正率懂得都懂 3. 可能会参与预研的东西 不会很快参与…

HaLo-NeRF:利用视觉和语言模型对场景的精准定位和细粒度语义理解

包含大量摄影师拍摄的照片的互联网图像集有望实现对大型旅游地标的数字探索。然而,先前的工作主要集中在几何重建和可视化上,忽略了语言在为导航和细粒度理解提供语义界面方面的关键作用。 项目:HaLo-NeRF: Learning Geometry-Guided Semant…

Ansible自动化运维工具主机清单配置

作者主页:点击! Ansible专栏:点击! 创作时间:2024年4月24日12点21分 Ansible主机清单文件用于定义要管理的主机及其相关信息。它是Ansible的核心配置文件之一,用于Ansible识别目标主机并与其建立连接。 …

win10安装DHCP服务--用于2台机器之间搭建简易网络来进入目标机器修改配置

前言: 客户多了,往往会出现各种突发情况。 比如一个客户现场没有DHCP,没有显示器,键盘。 你只有一台笔记本的情况下要配置目标机器的网络。要如何配置?? 这时候就可以使用这篇博客提供的方式了。 Windows…

分布式与一致性协议之CAP和Paxos算法(一)

CAP 理论 如何使用BASE理论 以InfluxDB系统中DATA节点的集群实现为例。DATA节点的核心功能是读和写,所以基本可用是指读和写的基本可用。我们可以通过分片和多副本实现读和写的基本可用。也就是说,将同一业务的数据先分片,再以多份副本的形…

STM32驱动SYN6288语音合成模块

STM32驱动SYN6288语音合成模块 简介功能特点通讯方式接线代码结果总结 简介 SYN6288通过异步串口(UART) 通讯方式,接收待合成的文本数据,从而实现文本到语音的转换SYN06188 语音芯片的优秀特点:最小SS0P28L 贴片封装、硬件接口简单、低功耗、音色清亮圆…

C++中auto关键字的用法详解

1.简介 auto作为一个C语言就存在的关键字,在C语言和C之间却有很大区别。 在C语言中auto修饰的变量,是具有自动存储器的局部变量,但因为局部变量默认类别默认是auto修饰导致一直没有人去使用它。 C11中,标准委员会赋予了auto全新…

Linux学习笔记:进程间的通信.共享内存shm

共享内存shm 什么是共享内存shm共享内存的特点关键函数ftokshmgetshmatshmdtshmctl 代码示例 什么是共享内存shm 进程间通信的前提:必须让不同的进程看到同一份资源,并且这个资源是OS提供的 而共享内存(Share memory)就是在内核共享内存区找一块物理内存空间,并允许多个进程共…

西瓜书学习——决策树形状、熵和决策树的本质

文章目录 决策树形状监督学习算法分类与回归 熵信息熵香农熵 (Shannon Entropy) - H(X)联合熵 (Joint Entropy) - H(X, Y)条件熵 (Conditional Entropy) - H(Y|X)互信息 (Mutual Information) - I(X; Y)相对熵 (Relative Entropy) / KL散度 (Kullback-Leibler Divergence) - DK…

学习CSS3,实现红色心形loading特效

试想一下,如果你的网站在加载过程中,loading图由一个老旧的菊花转动图片,变为一个红色的心形loading特效,那该有多炫酷啊。 目录 实现思路 初始化HTML部分 延迟动画是重点 设定动画效果 完整源代码 最后 实现思路 每个…

怎样批量将jpg图片转换成HEIC格式?jpg快速转换成HEIC图片

heic格式和jpg格式图片大家都很熟悉了。那么这两种图片格式的区别是什么?哪种格式图片更好一些? 一,区别:jpg和HEIC的区别 1,jpg格式有良好的压缩性能和良好的重建质量而被广泛应用于图像和视频处理中。 2&#xff…

HarmonyOS实战开发-RPC连接、如何实现前台选择商品和数目,后台计算总价的功能

介绍 本示例使用ohos.rpc 相关接口,实现了一个前台选择商品和数目,后台计算总价的功能,使用rpc进行前台和后台的通信。 效果预览 使用说明: 点击商品种类的空白方框,弹出商品选择列表,选择点击对应的商品…

常用工具网站

代码生成器: SQL转Java代码生成器 | 不求人导航SQL转Java代码生成器https://codegen.bqrdh.com/

面试题-Redis篇

什么是 Redis? Redis 是完全开源免费的,遵守 BSD 协议,是一个高性能的 key-value 数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis 支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时 …

windows10 H2database 安装教程

1. 下载https://www.h2database.com/html/download.htmlhttps://www.h2database.com/html/download.html 具体版本可以根据项目配置的版本 2. 安装 3.手动启动 安装完后默认启动,如退出后需手动启动则在安装目录下启动。 启动完,在桌面右下角会出现小图…

春游江淮 请来池州 | 五一池州文旅活动时间表大集合,都在这里

快到五一,想好去哪里玩吗?来池州,各景区缤纷活动登场, 速速划重点、敲黑板! 五一放大招!到底怎么玩?文旅活动、阅读推广 非遗展示......现在都已经为你整理好啦!这份超齐全的 五一假期文旅活动时间表,助力您玩转各景区,整个假期嗨不停~ 旅游惠民活动 表演类活动…

一、初识Django

简介 Django 是一个用于构建 Web 应用程序的高级 Python Web 框架。 版本对应 不同版本的django框架是基于特定的不同的python版本开发的,所以不同版本的django框架要正常执行功能只能安装特定的python版本 Django安装 安装 Django # 全局安装 pip install dj…