Git 实操

在这里插入图片描述

文章目录

  • 安装
    • 本地操作工作流程
  • Git 初始化以及仓库的创建、操作
    • 基本信息
    • 初始化一个Git 仓库
  • Git 管理远程仓库
    • Git 克隆
    • 给远程仓库设置别名
    • pull 拉取并合并分支
    • Push推送到远程
    • 实战

  • git 是免费的管理github 的一个软件

安装

  • Git 官网下载:https://git-scm.com/download/win
    在这里插入图片描述
    选择对应的版本即可

本地操作工作流程

在这里插入图片描述

  • 基本流程(本地操作,并没有同步到远程仓库)
    在这里插入图片描述
  • git status : 获取文件的状态
  • git add : 将文件从工作区域提交到暂存区
  • git commit -m " 提交描述 " = :将文件从暂存区提交到Git 仓库

Git 初始化以及仓库的创建、操作

基本信息

配置全局的 Git 用户名和邮箱地址。这些信息将会用于每一次 Git 提交,以标识是哪个用户进行了提交。在这里,你需要将 '实际用户名' 替换为你在 Git 中希望使用的用户名,'邮箱' 替换为你的电子邮件地址。

git config --global user.name '实际用户名'
git config --global user.email '邮箱'

这样的全局配置对于你在所有的 Git 仓库中都使用相同的身份信息非常方便。如果你在特定的仓库中想要使用不同的身份信息,你可以在那个仓库中执行相同的命令,但不使用 --global 选项。在这种情况下,配置将只对当前仓库有效。

例如,如果你在某个特定的仓库中需要使用不同的用户名和邮箱,你可以在该仓库中执行:

git config user.name '新的用户名'
git config user.email '新的邮箱'

这将会覆盖全局的配置,只在这个仓库中生效。

  • 可以使用命令来查看是否配置好信息git config --list

初始化一个Git 仓库

你的步骤已经基本正确了。这是一种典型的 Git 工作流程,让我更详细地为你解释一下:

  1. 在文件夹内执行 git init

    git init
    

    这将在当前文件夹下创建一个新的 Git 仓库,生成一个 .git 文件夹,用于跟踪版本历史和管理配置。

  2. 使用 git status 查看文件状态:

    git status
    

    这会列出工作目录中所有文件的状态,包括未跟踪的、已修改的和已暂存的文件。

  3. 使用 git add 文件名 将文件添加到暂存区:

    git add 文件名
    

    这将指定的文件或目录添加到 Git 的暂存区,准备提交到版本历史。

  4. 再次使用 git status 查看文件状态:

    git status
    

    确认文件已经被成功添加到暂存区。

  5. 使用 git commit 提交文件:

    git commit -m '提交描述'
    

    这将提交暂存区中的所有更改到版本历史,并且需要提供一个简短的提交描述,以说明这次提交的目的。

以上步骤完成后,你的更改就已经被提交到本地仓库中了。如果你想将这些更改推送到远程仓库,可以使用 git push 命令。

请注意,这是一个基本的工作流程,实际使用中可能会有一些变化,特别是在涉及到分支、合并、远程仓库等方面。

Git 管理远程仓库

在这里插入图片描述

  • 目的:同步备份共享
    在这里插入图片描述
  • 将本地仓库的文件上传到远程仓库

Git 克隆

git clone 命令用于从远程仓库克隆(复制)一个项目到本地。语法如下:

git clone 仓库地址

在这里,你需要将 仓库地址 替换为你要克隆的实际仓库地址。

例如,如果你要克隆一个 GitHub 上的仓库,你可以执行类似如下的命令:

git clone https://github.com/用户名/仓库名.git

或者使用 SSH 地址(前提是你已经设置好了 SSH 密钥):

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

上述命令会将远程仓库克隆到当前工作目录下的一个新文件夹,文件夹的名称即为仓库名。如果你想为克隆的仓库指定一个不同的本地目录名,可以在命令中添加目标目录:

git clone 仓库地址 目标目录

例如:

git clone https://github.com/用户名/仓库名.git my-folder

这将在当前工作目录下创建一个名为 my-folder 的文件夹,并将仓库克隆到这个文件夹中。
在这里插入图片描述

  • clone 下来之后,就可以在本地进行操作,操作完成之后就上传到远程仓库

给远程仓库设置别名

  • git remote add 别名 实际仓库的url

例如:git remote add origin https://github.com/suooous/Deeplearning.git
那么以后使用url 的地方就可以用 origin 来代替

pull 拉取并合并分支

命令 git pull --rebase main 的意思是从远程仓库中拉取 main 分支的变更,并使用 rebase 方式合并到你当前所在的分支。这通常用于保持一个线性的提交历史。

。在执行 pull 操作时,你需要指定远程仓库的别名。假设你的远程仓库别名是 origin,你可以执行以下命令:

git pull --rebase origin main

这将从远程仓库 originmain 分支拉取最新变更,并将这些变更通过 rebase 方式应用到你当前所在的分支。

请确保在执行 rebase 操作前,你的本地分支是干净的(没有未提交的修改)。如果有未提交的修改,Git 会提示你在 rebase 之前先进行提交或者撤销这些修改。

Push推送到远程

  • git push -u origin master
    这个命令将本地的 master 分支推送到远程仓库,并将远程仓库的 main 分支作为本地 master 分支的上游分支。这是一种常见的操作,特别是在首次推送分支时。

解释一下命令的各个部分:

  • git push: 将本地变更推送到远程仓库。
  • -u origin master: -u 选项用于设置上游分支。origin 是远程仓库的别名,master 是本地分支的名称。

所以,这个命令的作用是将本地的 master 分支推送到名为 origin 的远程仓库,并将远程仓库的 main 分支设置为本地 master 分支的上游分支。这样,在以后的推送或拉取操作中,你就可以使用 git pushgit pull,而不需要再次指定远程和分支。

确保你的本地分支 main 是准备好被推送的,即没有未提交的修改。如果有未提交的修改,Git 会要求你先进行提交或者处理这些修改。

实战

背景:远程仓库的分支为main ,本地仓库的分支为master
目的:将本地分支的内容合并到远程的main 分支,并不覆盖原来的内容

前提准备:将账号信息等配置好,已经将文件传送到本地的仓库

  • 将目的仓库设置别名
    在这里插入图片描述
  • 拉取远程仓库的main 分支,同步到现在的master 分支
    在这里插入图片描述
  • 将master 分支传送到远程的main 分支
    在这里插入图片描述

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

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

相关文章

前端(二)VUE功能集锦

一、引言 作者开发工具平台的时候,用到了vue和element-ui,这里写一下各种功能使用,有的是绕点弯路,有的是需要结合实现需要自己改写一下。 二、功能 先看看环境,作者后端是SpringBoot,前端是VUEElementUI&a…

揭秘高生产力设计工具!15款原型设计软件推荐大公开!

1、Proto.io Proto.io是一个特殊的手机原型开发平台——可以构建和部署全交互式移动程序的原型,并可以模拟类似的成品。它可以在大多数浏览器中运行,并提供三个重要的界面:dashboard、编辑器和播放器。 dashboard可以用来管理项目。编辑器是…

spring常见漏洞(3)

CVE-2017-8046 Spring-Data-REST-RCE(CVE-2017-8046)&#xff0c;Spring Data REST对PATCH方法处理不当&#xff0c;导致攻击者能够利用JSON数据造成RCE。本质还是因为spring的SPEL解析导致的RCE 影响版本 Spring Data REST versions < 2.5.12, 2.6.7, 3.0 RC3 Spring Bo…

亚信安慧AntDB数据库自主研发技术再获国际认可

亚信安慧AntDB数据库最新宣布喜讯&#xff1a;成功通过了GB 18030-2022《信息技术 中文编码字符集》的最高级别认证&#xff0c;从而荣幸地成为首批获得此认证的数据库产品之一。这一认证的取得不仅是AntDB在技术上的重要里程碑&#xff0c;更是对其一贯积极践行国家政策和标准…

护眼台灯哪个品牌更好?汇总好用的护眼台灯前五名

随着对健康生活的追求不断增长&#xff0c;越来越多的人开始关注眼睛健康问题。在日常生活和工作中&#xff0c;台灯作为常用的照明设备之一备受关注&#xff0c;尤其是护眼台灯的问世引起了广泛关注。尤其是对于那些经常长时间用眼的人群&#xff0c;比如面临较重课业负担的学…

转载 | 深耕数据安全 创新“智”高点-天空卫士获评金智奖“年度最具影响力企业奖”

近日&#xff0c;以“并肩聚力&#xff0c;协同创新&#xff0c;共谋网络安全产业新发展”为主题的2022-2023年度中国网络安全与信息产业“金智奖”颁奖盛典在上海隆重举行。北京天空卫士网络安全技术有限公司&#xff08;以下简称“天空卫士”&#xff09;凭借其高速成长能力、…

【书生·浦语】大模型实战营——第五次课程作业

基础作业——使用LMDeploy 以本地对话、网页Gradio、API服务中的一种方式部署InternLM-Chat-7B模型&#xff0c;生成300字的小故事 环境准备 除了安装所需依赖之后&#xff0c;重要的是进行模型转化&#xff08;转换成TurboMind格式&#xff09;&#xff0c;这里需要注意转化命…

Android项目架构怎么做

项目架构指南 本指南包含一些最佳做法和推荐架构&#xff0c;有助于构建强大而优质的应用。 注意&#xff1a; 本页假定您对 Android 框架有基本的了解。 移动应用用户体验 典型的 Android 应用包含多个应用组件&#xff0c;包括 Activity、Fragment、Service、内容提供程序…

计算机毕业设计----SSH滑雪场场地租赁管理系统

项目介绍 该项目主要包括三个角色&#xff1a;管理员、收银员、用户&#xff1b; 用户角色包含以下功能&#xff1a; 用户登录,修改个人信息,查看我的订单等功能。 管理员角色包含以下功能&#xff1a; 管理员登录,滑雪场管理,订单管理,教练管理,器材管理,会员管理,收银员管…

docker容器和常用命令

1.什么是容器 容器是隔离的环境中运行的一个 进程 , 如果进程结束 , 容器就会停止. 细致: 容器的隔离环境 , 拥有自己的 ip 地址 , 系统文件 , 主机名 , 进程管理 , 相当于一个 mini的系统 2.容器 vs 虚拟机 3.Docker极速上手指南 #1.安装相关依赖. sudo yum install -y …

黑龙江教育杂志黑龙江教育杂志社黑龙江教育编辑部2023年第11期目录

卷首/开篇 科学的“加法”是什么 陆鹤鸣; 1 聚焦/管理_家校合作 “双减”背景下高中家校共育的现状与成因探析——哈尔滨市第九中学调查问卷分析 李佰嵩;张雨萌;李丹丹;岳彤; 4-6 共筑家校成长共同体 开创家校共育新生态 李隽;李俊峰;胡胜男; 7-9《黑龙江教育》投稿…

关于C#中的async/await的理解

1. 使用async标记的方法被认为是一个异步方法&#xff0c;如果不使用await关键字&#xff0c;调用跟普通方法没有区别 static async Task Main(string[] args){Console.WriteLine("主线程id&#xff1a;" Thread.CurrentThread.ManagedThreadId);TestAwait();Consol…

表的增删改查CURD(一)

&#x1f3a5; 个人主页&#xff1a;Dikz12&#x1f525;个人专栏&#xff1a;MySql&#x1f4d5;格言&#xff1a;那些在暗处执拗生长的花&#xff0c;终有一日会馥郁传香欢迎大家&#x1f44d;点赞✍评论⭐收藏 目录 新增&#xff08;Create&#xff09; 全列插入 指定列…

docker使用nginx部署vue刷新页面404

docker使用nginx部署vue刷新页面404 从docker内部复制出来的配置文件是这样的&#xff0c;但是刷新页面之后就显示404&#xff0c;关键是我两个前端项目都是用的这一个配置文件&#xff0c;但是只有一个项目出现刷新浏览器显示404的问题&#xff0c;这给我搞懵了&#xff01;&…

一些面试会问到的奇怪问题与面试总结

1.v-for、v-if先后顺序。 官方不建议一起使用&#xff0c;但是有时候面试的时候会问到。 在vue2中是v-for先与v-if的。 源码js编译结果&#xff1a; _c()就是vm.$createElement()&#xff0c;意思是创建一个虚拟的element&#xff0c;就是返回值是VNode。 _l就是renderlist…

关于java创建对象内存分析

关于java创建对象内存分析 我们在前面的文章中&#xff0c;了解了类和对象&#xff0c;以及创建对象&#xff0c;给对象赋值等&#xff0c;我们本篇文章来进一步了解一下创建对象的时候&#xff0c;堆和栈的情况&#xff0c;以及对内存的分析&#x1f600; 1、创建一个类 我…

虚拟机连接(与主机断开连接)U盘的按钮为灰色之解决方法

在WIN11中&#xff0c;虚拟机“连接(与主机断开连接)U盘”选项为灰色&#xff0c;解决方法如下&#xff1a; 1、关闭虚拟机电源&#xff0c;得到下面的界面&#xff1a; 2、根据上述提示&#xff0c;找到虚拟机所在磁盘 3、配置文件属性见下图&#xff1a; 4、使用记事本打开…

【深度学习:Synthetic Training Data 】合成训练数据简介

【深度学习&#xff1a;Synthetic Training Data 】合成训练数据简介 计算机视觉模型的视频标签视频注释与图像注释‍Data 数据‍Annotation process ‍标注流程‍Accuracy 准确性 ‍注释视频的优点易于数据收集时间背景实用功能 视频注释用例自动驾驶汽车姿态估计交通监控医学…

Python源码26:海龟画图turtle画向日葵

---------------turtle源码集合--------------- Python教程43&#xff1a;海龟画图turtle画小樱魔法阵 Python教程42&#xff1a;海龟画图turtle画海绵宝宝 Python教程41&#xff1a;海龟画图turtle画蜡笔小新 Python教程40&#xff1a;使用turtle画一只杰瑞 Python教程39…

KT148A语音芯片智能锁扩展语音地址以及如何支持大量小文件的打包

一、语音芯片应用于智能锁的需求 智能锁的语音播放需求中&#xff0c;有很多需要多国语言合并在一起的需求 其中语音文件数多&#xff0c;并且每个语音文件小的特点 如果使用OTP的语音芯片&#xff0c;就很麻烦&#xff0c;因为用户不可烧录&#xff0c;调试也很繁琐 同时大…