版本控制系统-Git

embedded/2024/10/19 9:40:27/

目录

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.ppmy.cn/embedded/34837.html

相关文章

github提交代码失败解决方案

1.打开github.push 工具 ​ 如果未安装github客户端请参考附录github 安装配置 2.设置Git的user name和email git config --global user.name "yourname" git config --global user.email "youremail" 3.生成SSH密钥 查看是否已经有了ssh密钥&#xff1…

5.06号模拟前端面试8问

5.06号模拟前端面试8问 1.promise如何实现then处理 在JavaScript中,Promise 是一个代表异步操作最终完成或失败的对象。它有三种状态:pending(等待),fulfilled(完成),rejected&…

论文笔记:假新闻检测的分层多模态上下文注意网络

整理了SIGIR2021 Hierarchical Multi-modal Contextual Attention Network for Fake News Detection)论文的阅读笔记 背景模型特征提取跨模态融合分层编码网络 实验 背景 以往的假新闻检测方法存在以下不足:未能利用多模态上下文信息,提取每条…

.排序总讲.

在这里赘叙一下我对y总前四节所讲排序的分治思想以及递归的深度理解。 就以788.逆序对 这一题来讲(我认为这一题对于分治和递归的思想体现的淋淋尽致)。 题目: 给定一个长度为 n𝑛 的整数数列,请你计算数列中的逆序对…

MLP实现fashion_mnist数据集分类(1)-模型构建、训练、保存与加载(tensorflow)

1、查看tensorflow版本 import tensorflow as tfprint(Tensorflow Version:{}.format(tf.__version__)) print(tf.config.list_physical_devices())2、fashion_mnist数据集下载与展示 (train_image,train_label),(test_image,test_label) tf.keras.datasets.fashion_mnist.l…

【软件测试理论002】认识软件缺陷、缺陷生命周期、缺陷分类

目录 1 认识软件缺陷 1.1 什么是软件缺陷 1.2 缺陷存在哪些方面 1.3 软件缺陷示例 1.4 软件缺陷的表现形式 1.5 软件缺陷产生的原因 1.6 软件缺陷的根源 1.7 软件缺陷修复的费用 2 软件缺陷的信息分类 2.1 软件缺陷的生命周期 2.2 软件缺陷的信息 2.3 软件缺陷分类…

【Linux】进程相关

文章目录 一、fork函数二、进程地址空间 一、fork函数 fork 函数从其执行位置分化为两个进程来执行剩下的代码, 调用 fork 的函数称为父函数, 分化出来的函数称为子函数. 头文件: #include <unistd.h> 声明: pid_t fork(void); 关于返回值, 函数调用成功后就分化为两个…

Mysql - 聚合函数和分组查询

当涉及处理数据库中的大量数据时&#xff0c;聚合函数和分组查询是非常重要的。通过聚合函数&#xff0c;可以对数据进行统计和汇总&#xff0c;而分组查询则允许我们根据特定的条件对数据进行分组分析。在这篇文章中&#xff0c;我们将深入探讨MySQL中的聚合函数和分组查询&am…