【Git项目部署到本地仓库】

1. 下载安装Git

根据您的操作系统,访问Git的官方网站:https://git-scm.com/download/win

具体安装教程请访问其他博客,例如:http://t.csdnimg.cn/I28VO

安装完成后,您可以通过在win+R键输入cmd打开命令行输入

git -v

来检查Git是否正确安装。如果正确安装,将显示Git的版本号。b7fa34f4132742ae9358408984acca33.png

2. Git本地仓库的创建和配置

在命令行中,导航到您想要创建Git仓库的目录,例如,如果您的项目在~/my_project目录下,您可以使用cmd命令进入该目录。然后运行git init命令初始化一个新的Git仓库。

配置Git用户名和邮箱地址是非常重要的,因为这些信息将用于标识您在Git中的提交。使用git config命令进行配置,如下所示:

git config --global user.name "用户名" 
git config --global user.email "邮箱地址"

检验当前Git绑定的用户名和邮箱,您可以使用git config命令来查询这些配置信息。请按照以下步骤操作:

  1. 打开命令行工具(如终端或命令提示符)。

  2. 输入以下命令来查看全局设置中的用户名:

    git config --global user.name
这个命令会显示您在全局设置中配置的用户名。如果您没有在全局设置中配置用户名,它将不会返回任何内容。

     3.输入以下命令来查看全局设置中的邮箱地址:

git config --global user.email

这个命令会显示您在全局设置中配置的邮箱地址。同样,如果没有配置,则不会有输出。

ceb3e37b59dd4bd193150c80ae7492e0.png

如果您想要查看当前仓库(局部)的用户名和邮箱设置,可以省略--global选项:

git config user.name 
git config user.email

这些命令会显示在当前仓库级别配置的用户名和邮箱。如果在仓库级别没有特定配置,那么它会回退到全局设置,如果全局设置也没有,那么通常不会有输出。

请注意,如果您从未设置过用户名和邮箱,或者设置被移除了,这些命令可能不会返回任何值。在这种情况下,您应该考虑使用git config --global user.name "Your Name"git config --global user.email "your.email@example.com"命令来设置它们,以确保您的提交有正确的标识信息。

3. 提交项目源程序文件到本地库

要将项目传到本地仓库,你需要先在本地创建一个新的git仓库,然后将项目文件添加到该仓库中。以下是一些基本步骤:

454d16cec8cc4a199d614f3ce4772c54.png

1. 在本地创建一个新的git仓库:

$ mkdir 项目名称
$ cd 项目名称
$ git init

4402c44b45934e75b3a9b0a64da5154a.png

2. 将项目文件复制到新创建的git仓库中:

$ cp -r /path/to/your/project/* .

/后面填路径 

3. 将项目文件添加到git仓库中:

$ git add .
$ git commit -m "Initial commit"

现在你的项目已经被传到本地仓库中了。

如果需要将本地仓库与远程仓库进行关联,可以使用以下命令:

$ git remote add origin 远程仓库URL
$ git push -u origin master

这样就可以将项目从本地仓库推送到远程仓库中了。
 

4. 多次修改并提交源代码文件

假设您修改了~/my_project目录下的main.py文件,您可以再次使用git addgit commit命令来提交这些更改:

git add main.py 
git commit -m "Updated main.py with bug fixes"

您可以重复这个过程多次,每次修改文件并提交更改。

5. 查看文件历史记录和版本差异

使用git log命令可以查看提交历史,包括每次提交的哈希值、作者、日期和提交信息:

git log

要查看main.py文件在两个不同提交之间的差异,您可以使用git diff命令,并指定这两个提交的哈希值:

git diff <commit-hash1> <commit-hash2> -- main.py

<commit-hash1><commit-hash2>替换为您想要比较的两个提交的哈希值。

6. 恢复文件到前面的某个版本

如果您想要将main.py文件恢复到某个特定提交的状态,可以使用git checkout命令。首先,使用git log找到您想要恢复的提交的哈希值,然后执行以下命令:

git checkout <commit-hash> -- main.py
这会将main.py文件的内容恢复到指定提交时的状态。请注意,这不会创建一个新的提交;它只是更改了工作目录中的文件。如果您想要将这个恢复作为一个新的提交,您需要在恢复文件之后再次使用git addgit commit

7. 删除某个提交文件并查看项目状态

要从Git历史中删除某个文件的所有跟踪记录,您可以使用git filter-branch命令。但请注意,这是一个重写历史的操作,可能会影响到与其他仓库的协同工作,因此在使用之前请确保您了解可能带来的后果。

以下是一个使用git filter-branch删除文件的示例:

git filter-branch --force --index-filter "git rm --cached --ignore-unmatch unwanted_file.txt" --prune-empty --tag-name-filter cat -- --all

这个命令会从所有提交中删除unwanted_file.txt的跟踪记录。执行完成后,使用git status命令查看当前项目的状态,确保该文件不再被Git跟踪。

最后,如果您已经将更改推送到了远程仓库,您需要强制推送这些重写历史的更改到远程仓库。但请注意,这可能会影响到其他协作者的工作,因此请务必谨慎操作,并与团队成员进行充分的沟通。

git push origin --force --all
在执行这些操作时,请确保您已经备份了

以上仅供参考,如有操作不当或者出错可自行查找资料或者询问chat-gpt。

 

 

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

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

相关文章

服务器设置了端口映射之后外网还是访问不了服务器

目录 排查思路参考&#xff1a; 1、确认服务是否在运行 2、确认端口映射设置是否正确 3、使用防火墙测试到服务器的连通性 4、检查服务内部的配置 5、解决办法 6、学习小分享 我们在一个完整的网络数据存储服务系统设备中都会存有业务服务器、防火墙、交换机、路由器&a…

实现一个Google身份验证代替短信验证

最近才知道公司还在做国外的业务&#xff0c;要实现一个登陆辅助验证系统。咱们国内是用手机短信做验证&#xff0c;当然 这个google身份验证只是一个辅助验证登陆方式。看一下演示 看到了嘛。 手机下载一个谷歌身份验证器就可以 。 谷歌身份验证器&#xff0c;我本身是一个基…

[springboot源码探索]返回值处理

[springboot源码探索]返回值处理 开始处理返回值 public class ServletInvocableHandlerMethod extends InvocableHandlerMethod {// ...// 返回值处理器组(组合模式,可以理解为一组返回值处理器)private HandlerMethodReturnValueHandlerComposite returnValueHandlers;publ…

C++11标准 - 声明(auto,decltype,nullptr)

C11标准 - 声明&#xff08;auto&#xff0c;decltype&#xff0c;nullptr&#xff09; 前言1. auto2. decltype3. nullptr 前言 c11提供了多种简化声明的方式&#xff0c;尤其是在使用模板时。 1. auto 在C98中auto是一个存储类型的说明符&#xff0c;表明变量是局部自动存…

ChatGPT实体化了!手机变身ChatGPT实体机器人,只需一个配件,能说话还会做梦,真的牛!

你有没有想过&#xff0c;如果有一天ChatGPT有了身体&#xff0c;跑到你办公桌上成了你的宠物&#xff0c;这是个多么有趣的场景&#xff0c;LOOI就是这样一款把幻想带进现实的产品 不得不说&#xff0c;ChatGPT让具身智能达到了新高度&#xff0c;LOOI便应运而生。 分享几个网…

什么是HTTP? HTTP 和 HTTPS 的区别?

文章目录 一、HTTP二、HTTPS三、区别参考文献 一、HTTP HTTP (HyperText Transfer Protocol)&#xff0c;即超文本运输协议&#xff0c;是实现网络通信的一种规范 在计算机和网络世界有&#xff0c;存在不同的协议&#xff0c;如广播协议、寻址协议、路由协议等等… 而HTTP是…

聊聊低代码产品的应用场景

随着数字化转型的不断深入&#xff0c;企业对于快速开发和迭代软件应用的需求也越来越迫切。而在这样的背景下&#xff0c;低代码产品应运而生&#xff0c;成为了一种热门的技术解决方案。本文将解读低代码产品的定义并探讨其应用场景。 一、低代码产品的定义 低代码产品是一种…

DFS(基础,回溯,剪枝,记忆化)搜索

DFS基础 DFS(深度优先搜索) 基于递归求解问题&#xff0c;而针对搜索的过程 对于问题的介入状态叫初始状态&#xff0c;要求的状态叫目标状态 这里的搜索就是对实时产生的状态进行分析检测&#xff0c;直到得到一个目标状态或符合要求的最佳状态为止。对于实时产生新的状态…

Linux系统Docker如何部署Nextcloud结合内网穿透实现公网访问本地资源?

文章目录 1. 安装Docker2. 使用Docker拉取Nextcloud镜像3. 创建并启动Nextcloud容器4. 本地连接测试5. 公网远程访问本地Nextcloud容器5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定公网地址远程访问 本文主要介绍如何在Linux Ubuntu系统使用Docker快速部署Nextcl…

Html提高——视频标签音频标签及其相关属性

HTML5 在不使用插件的情况下&#xff0c;也可以原生的支持音视频格式文件的播放&#xff0c;当然&#xff0c;支持的格式是有限的。 1、video标签 1.1、video标签的语法 <video src"文件地址" controls"controls"></video> video标签的内部…

接口自动化框架Pytest —— 配置文件pytest.ini的详细使用

前言 我们在执行用例的时候&#xff0c;每次都在命令行中输入-v&#xff0c;-s等一些命令行参数的时&#xff0c;比较麻烦。其中pytest.ini这个配置文件可以快速的帮助我们解决这个问题。 配置文件 pytest.ini文件是pytest的主配置文件&#xff0c;可以改变pytest的运行方式…

【python】pip清华大学镜像

1、修改pip源为清华源&#xff1a; pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple2、结果是自动给我创建了一个文件&#xff1a; 3、打开这个文件所在的文件夹&#xff1a; 4、打开文件&#xff1a; 5、如果不想指定清华的&#xff0c;就删掉…

提升K8S故障排除效率:详解Pod内抓包的高效策略!

在Kubernetes环境中&#xff0c;故障排除是管理者日常工作中不可或缺的一部分。随着容器化应用的广泛采用&#xff0c;需要一种高效的方法来诊断和解决Pod内部的问题。本文将重点介绍如何利用抓包技术提升Kubernetes环境中Pod内部故障排除的效率。 为什么需要Pod内抓包 在Kube…

【MySQL】DQL-案例练习-DQL基本介绍&语法&执行顺序(代码演示)

前言 大家好吖&#xff0c;欢迎来到 YY 滴MySQL系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

Baidu Comate

Baidu Comate 他来了 描述功能支持的编程语言支持的 IDE支持的操作系统IDEA安装操作 描述 智能代码助手&#xff0c;其实就是写代码的辅助工具&#xff0c;可以很大程度的帮你提升编码效率&#xff0c;作为一个白嫖党&#xff0c;我觉得这个还可以。 功能 注释生成代码、增强…

Flutter 拦截系统键盘,显示自定义键盘

一、这里记录下在开发过程中&#xff0c;下单的时候输入金额需要使用自定义的数字键盘 参考链接: https://juejin.cn/post/7166046328609308685 效果图 二、屏蔽系统键盘 怎样才能够在输入框获取焦点的时候&#xff0c;不让系统键盘弹出呢&#xff1f;同时又显示我们自定义的…

LeetCode刷题【栈】

目录 栈394. 字符串解码739. 每日温度 栈 394. 字符串解码 给定一个经过编码的字符串&#xff0c;返回它解码后的字符串。 编码规则为: k[encoded_string]&#xff0c;表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是…

Netty教程之NIO基础

NIO 介绍 NIO 全称java non-blocking IO&#xff08;非阻塞 I/O&#xff09;&#xff0c;后续提供了一系列改进的输入/输出的新特性&#xff0c;被统称为 NIO(即 New IO)&#xff0c;是同步非阻塞的。 阻塞和非阻塞是进程在访问数据的时候&#xff0c;数据是否准备就绪的一种…

mongodb sharding分片模式的集群数据库,日志治理缺失导致写入数据库报错MongoWriteConcernException的问题总结(下)

一、接着上文 上文介绍了mongodb sharding的分片集群搭建&#xff0c;本文侧重于讲述日志治理。 这里使用linux自带的日志治理工具logrotate&#xff0c;无论是哪个端口的进程&#xff0c;其日志治理方式类似。 查看/data目录下的文件大小&#xff0c; du -hs *二、Logrota…

每日一题(相交链表 )

欢迎大家来我们主页进行指导 LaNzikinh-CSDN博客 160. 相交链表 - 力扣&#xff08;LeetCode&#xff09; 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 。 图示两个链表在节…