git-版本管理工具基本操作-创建仓库-拉取-推送-暂存库-版本库

1、创建仓库

 2、克隆仓库到本地(首次拉取需要输入用户名和密码,用户名用邮箱,密码用登录gitee的密码,后面配置密钥后可以直接clone)

在命令行输出两行指令配置git才能克隆:

username:gitee账号名

useremail:gitee账号绑定的邮箱

 进入拉取下来的工程目录:

 

使用ll命令查看.git

3、git的设计原理: 

index:暂存区

objects:版本库

 4、git status:获取版本状态,该命令不能再隐藏文件.git中使用

添加了文件的状态: 

 添加了文件到版本库的状态:

 5、推送更新仓库过程

(1)添加文件到暂存区:git add   filename

(2)添加暂存区到版本库:git commit -m  “添加说明”  (建议格式固定:添加人员:操作描述)

(3)推送文件到远程仓库:git push origin  master

origin:远程仓库地址

master:仓库分支名

 cd .git/

vim config

 6、添加开发者协作

管理--》仓库成员管理--》开发者--》邀请

 添加公钥:

进入Linux家目录使用ssh-keygen -t  -rsa -c "公钥标记"

cd 到.ssh/ 文件夹下可以看到生成的公钥和私钥;

pub后缀表示公钥; 

使用cat 查看公钥内容并赋值到仓库的公钥添加上;

 非仓库管理源获取该仓库内容需要用ssh:可以看提示配置

 git reflog于记录本地仓库的 HEAD 和分支引用(branch references)的变动历史

 误删回滚:

1、在git add 之前删除  用git checkout -- .(git restore可以替代但是在未提交之前,暂未尝试成功;)

 

 2、git add 之后 在 git commit 之前用 git restore 撤销修改;

 

 3、在git commit 之后删除可以通过git reset --hard 版本号前几个字符进行回滚

 

 

1. 创建仓库
  • 在Gitee、GitHub等Git托管平台上创建一个新的仓库。通常包括填写仓库名称、描述、是否公开等信息。
2. 克隆仓库到本地
  • 首次克隆仓库时,可能需要在命令行中输入用户名(使用邮箱格式)和密码(登录Gitee或GitHub的密码)。为了避免每次都需要输入密码,可以配置SSH密钥。

  • 配置Git用户信息(尽管这与克隆仓库无直接关系,但通常在开始使用Git前进行):

    git config --global user.name "gitee账号名"
    git config --global user.email "gitee账号绑定的邮箱"
  • 克隆仓库命令:

    git clone git@gitee.com:用户名/仓库名.git

    或使用HTTPS方式(首次可能需要输入用户名和密码):

    git clone https://gitee.com/用户名/仓库名.git
  • 进入仓库目录,并使用ll(或ls -l)命令查看文件,包括.git目录(通常是隐藏的)。

3. Git的设计原理
  • Index(暂存区):暂存更改的文件,准备提交到版本库中。
  • Objects(版本库):存储实际的文件内容和Git的历史记录。
4. git status
  • 用于获取当前仓库的状态,包括哪些文件被修改了、哪些文件是新添加的、哪些文件被暂存了等。
  • 添加了文件的状态git status会显示新文件未被跟踪(untracked)。
  • 添加了文件到版本库的状态:文件会显示为已暂存(staged)或已提交(committed)。
5. 推送更新仓库过程
  1. 添加文件到暂存区

    git add filename
  2. 添加暂存区到版本库

    git commit -m "添加说明" # 例如:"张三: 添加了新功能X"
  3. 推送文件到远程仓库

    git push origin master # 或者其他分支名,如main

    注意:随着Git的发展,master分支可能已被重命名为main

6. 添加开发者协作
  • 在Gitee等平台上,通过“管理”->“仓库成员管理”->“开发者”->“邀请”来添加协作者。

  • 添加公钥

    • 在Linux上生成SSH密钥对(如果还没有的话):
      ssh-keygen -t rsa -b 4096 -C "你的邮箱"
    • 将生成的公钥(.ssh/id_rsa.pub文件的内容)添加到Gitee等平台的SSH公钥设置中。
7. 误删回滚
  1. git add之前删除

    git checkout -- . # 或者 git restore .(Git 2.23+)
  2. git add之后,git commit之前撤销修改

    git restore filename # 或者 git checkout -- filename(较旧的Git版本)
  3. git commit之后删除或回滚

    git reset --hard <commit-id> # <commit-id>可以是提交的完整哈希值的前几个字符
8. git reflog
  • 用于记录本地仓库的HEAD和分支引用的变动历史。当你不确定何时或如何进行了某些更改时,这非常有用。

通过遵循这些规范,可以更有效地使用Git进行版本控制和团队协作。

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

快速排序(Java实现)

目录 快速排序的思想 代码实现 思路 代码 快速排序的特点 快速排序的思想 快速排序和冒泡排序一样&#xff0c;是一种交换排序。快速排序的核心思想也是分治&#xff0c;分而治之。给定一个数组&#xff0c;先选定一个元素作为枢轴&#xff0c;然后将大于枢轴的放在右边&a…

成为Python砖家(3): 何时产生字节码 .pyc 文件

好奇&#xff1a;.pyc和 __pycache__是啥&#xff1f; 你是否好奇&#xff0c;在某些 Python 工程中&#xff0c;当执行了 xxx.py脚本后&#xff0c;多出了 __pycache__目录&#xff1f;这个目录下存放的是一些 .pyc结尾的文件。 这些文件&#xff0c;叫做 python bytecode。 …

开源免费的表单收集系统TDuck

TDuck&#xff08;填鸭表单&#xff09;是一款开源免费的表单收集系统&#xff0c;它基于Apache 2.0协议开源&#xff0c;用户可以随时下载源码&#xff0c;自由修改和定制&#xff0c;也可以参与到项目的贡献和反馈中。TDuck表单系统不仅支持私有化部署&#xff0c;还提供了丰…

【IEEE独立出版】第四届人工智能、虚拟现实与可视化国际学术会议(AIVRV 2024)

第四届人工智能、虚拟现实与可视化国际学术会议&#xff08;AIVRV 2024&#xff09; 2024 4th International Conference on Artificial Intelligence, Virtual Reality and Visualization 会议时间&#xff1a;2024年11月1日-3日 会议地点&#xff1a;中国-南京…

在亚马逊云科技上提取视频内容并利用AI大模型开发视频内容问答服务

项目简介&#xff1a; 小李哥将继续每天介绍一个基于亚马逊云科技AWS云计算平台的全球前沿AI技术解决方案&#xff0c;帮助大家快速了解国际上最热门的云计算平台亚马逊云科技AWS AI最佳实践&#xff0c;并应用到自己的日常工作里。 本次介绍的是如何在亚马逊云科技上利用音视…

langchian 批次调用 prompt

目录 基础不使用批次 batch 批次调用 关于 langchian 额一些应用&#xff0c;可以查看案例&#xff1a; GitHub - 5zjk5/prompt-engineering: prompt 工程项目案例 基础不使用批次 from dotenv import load_dotenv import time import os from langchain_core.prompts imp…

Image-coloring的部署,在Ubuntu22.04系统下——点动科技

一、ubuntu22.04基本环境配置 1.1 更换清华Ubuntu镜像源 删除原来的文件 rm /etc/apt/sources.list开始编辑新文件 vim /etc/apt/sources.list先按i键&#xff0c;粘贴以下内容 # 默认注释了源码镜像以提高 apt update 速度&#xff0c;如有需要可自行取消注释 deb https:…

【体检】程序人生之健康检查,全身体检与预防疫苗,五大传染病普筛,基因检测等

程序员养生指南之 【体检】程序人生之健康检查&#xff0c;全身体检项目分类&#xff0c;五大传染病普筛&#xff0c;基因检测等 文章目录 一、全身体检与预防疫苗&#xff08;年检&#xff09;1、实验室检测&#xff1a;生化全套检查2、医技检查&#xff1a;辅助诊疗科室3、科…

【学习笔记】多元线性回归模型 —— Matlab

文章目录 前言一、多元线性回归多元线性回归模型线性模型 ( Y , X β , σ 2 I n ) (Y,X\beta,\sigma^2I_n) (Y,Xβ,σ2In​) 考虑的主要问题多元线性回归模型的参数估计多元线性回归模型和回归系数的检验 二、示例三、代码实现----Matlab1.多元回归的实现2.逐步回归的实现3.M…

MES系统:智能化排班排产的全面解决方案

MES&#xff08;制造执行系统&#xff09;管理系统通过集成多种先进技术、实时数据采集与分析、优化算法应用以及与其他系统的协同工作&#xff0c;实现了智能化排班排产功能。以下是该功能的详细实现方式&#xff1a; 数据集成与实时采集&#xff1a;MES系统与ERP、SCM、设备管…

Linux常用命令 ---- rmdir 命令[删除一个空目录]

rmdir 命令 功能&#xff1a;删除一个空目录 我们使用 mkdir 命令创建一个名为 test 空文件夹&#xff0c;如下图所示。 现在使用 rmdir 命令将 test 文件夹进行删除&#xff0c;如下图所示。 注意&#xff1a;rmdir 命令只能删除一个空目录&#xff0c;如果这个目录中有其他文…

python从入门到精通:函数

目录 1、函数介绍 2、函数的定义 3、函数的传入参数 4、函数的返回值 5、函数说明文档 6、函数的嵌套调用 7、变量的作用域 1、函数介绍 函数是组织好的&#xff0c;可重复使用的&#xff0c;用来实现特定功能的代码段。 name "zhangsan"; length len(nam…

【面试题系列Vue02】Vue Router 路由都有哪些模式?各模式之间有什么区别?

官方解析 Vue Router 路由有三种模式&#xff1a; hash 模式&#xff1a;使⽤ URL 中的 hash&#xff08;即 # 后面的内容&#xff09;来作为路由路径。 在这种模式下&#xff0c;页面不会重新加载&#xff0c;只会更新 hash 值&#xff0c;并触发路由变化&#xff0c;从而渲…

什么是机器人快换盘?

机器人快换盘&#xff0c;行业内也称作工具快换盘、换枪盘、快换工具盘、快速更换器、快换器、 快换夹具、治具快换等。是末端执行器快速更换装置&#xff08;End-Of-Arm Tooling&#xff0c;简称EOAT&#xff09;&#xff0c;是工业自动化领域中用于机器人手臂上的一种重要设备…

【Python零基础】while循环和用户输入

文章目录 前言一、input()函数二、while循环三、使用while循环来处理列表和字典总结 前言 我们开发一个应用程序&#xff0c;目的都是为了解决最终用户的问题&#xff0c;针对用户界面输入的数据&#xff0c;按照用户期待的逻辑进行处理&#xff0c;得到用户想要的结果。本章将…

如何在前端测试中,在F12中加入token

不止是token&#xff0c;cookie中其他的数据也都可以这样 首先打开F12&#xff0c;然后找到Application或者应用程序 然后找到cookie里面双击这里&#xff0c;输入token或者其他数据就可以了&#xff0c;后面输值。

高性能日志系统

目录 设计思路 架构设计 设计模式应用 单例模式 工厂模式 建造者模式 代理模式 异步处理设计 异步日志器使用原因 异步日志器设计思路 异步日志器实现的核心模块说明 性能优化以及问题解决 测试结果 双缓冲区机制设计 设计思路及其架构 生产消费模式与双缓冲区结…

C++ wxWidgets图形界面开发用什么IDE最好?

在主流免费的IDE工具中&#xff0c;我们可以想到的支持cmake项目的工具就只有QtCreator&#xff0c;VisualStudio&#xff0c;VSCode这三个。其中QtCreator和VSCode支持WIndows&#xff0c;Mac&#xff0c;WIndows三大主流平台。但是VSCode在Ubuntu等系统下的支持并没有在WIndo…

【vue讲解:ref属性、动态组件、插槽、vue-cli创建项目、vue项目目录介绍、vue项目开发规范、es6导入导出语法】

0 ref属性&#xff08;组件间通信&#xff09; # 1 ref属性放在普通标签上<input type"text" v-model"name" ref"myinput">通过 this.$refs[myinput] 拿到的是 原生dom对象操作dom对象&#xff1a;改值&#xff0c;换属性。。。# 2 ref属…

Leetcode JAVA刷刷站(38)外观数列

一、题目概述 二、思路方向 为了解决这个问题&#xff0c;我们可以编写一个Java函数countAndSay&#xff0c;该函数接受一个整数n作为输入&#xff0c;并返回外观数列的第n个元素。这个函数将基于递归公式来构建数列&#xff0c;其中countAndSay(1) "1"&#xff0c;…