使用 Git 跟踪项目文件
本章内容为:用Django 写学习笔记程序第三章.2部署程序摘录,详情内容查看请跳转下方链接:
用Django 写学习笔记程序第三章.2部署程序
文章目录
- 使用 Git 跟踪项目文件
- 虚拟环境中安装 git
- git 是什么
- git 安装完成后的简单配置
- 创建项目
- 忽略文件
- 初始化仓库
- 检查状态
- 将文件加入到仓库中
- 执行提交
- 查看提交历史
- 第二次提交
- 撤销修改
- 检查以前的提交
- 恢复指定提交的命令
- 删除仓库
使用 Git 跟踪项目文件
虚拟环境中安装 git
# 检查当前装有git的版本信息
git --version
如果你安装了git,会正确显示出版本信息:
反之,命令行窗口会提示不是系统命令。
那你还需要自己手动去下载 git
git 下载链接
如果有小伙伴对 git了解的粗微甚少,为了文章内容更加友好这里插上一些关于git的更多内容
git 是什么
Git 是一个版本控制系统,用于跟踪文件和文件夹的更改。它能够记录每个版本的更改,并允许用户比较不同版本之间的差异。Git是开源的,具有分布式特性和本地单机操作的能力。它适用于本地文件和代码版本管理,可以通过客户端工具如TortoiseGit连接到安装的Git版本控制系统进行操作。
git 安装完成后的简单配置
# git 需要知道你的用户名和电子邮箱地址,因为在操作项目时,
# 哪怕只是我们自己一个人,也需要知道是谁谁进行了操作git config --global user.name "设置用户名"
git config --global user.email "设置电子邮箱地址@"
创建项目
我们在系统中随意创建一个名为git_practice的文件夹,并创建一个输出 hello Git world! 的程序,给其命名为 hello_world.py 存储于刚才创建的 git_practice 文件夹内。
print("hello Git world!")
接下来,我们就用这个创建好的简易程序对git进行探索。
忽略文件
扩展名为 .pyc 的文件是根据 .py 文件自动生成的,我们需要让 Git跟踪它们。这些文件存储在 __pycache__中。为了让 Git 忽略这个目录,创建一个名为.gitignore的特殊文件,这个文件名以句点开头,且没有扩展名。
# 并在这个文件中添加下行代码
__pycache__/
Git忽略目录__pycache__中的所有文件。.gitignore可避免项目混乱。
初始化仓库
直接打开该路径的终端窗口
录入命令:
git init
输出表名:
Git 在git_practice中初始化了一个空仓库。仓库是程序中被 GIt主动跟踪的一组文件。Git用来管理仓库的文件都存储在隐藏的 .git/中.
检查状态
想要执行其它操作之前,我们先对项目状态进行检查
git status
在Git中,分支是项目的一个版本,从这里的输出可知,我们位于master分支上,
每次查看项目的状态时,输出都将指出位于 master上。
将文件加入到仓库中
下面我们将这两个文件加入到仓库中,并再次检查其状态
# 将项目中未被跟踪的所有文件加入到仓库中。
# 它不提交这些文件,只是让Git开始关注它们。
git add .# 检查状态
git status
执行提交
我们来执行第一次的提交操作。
git commit -m "Started project."
命令 git commit -m "message" 以拍摄项目的快照。
标志 -m 让 Git接下来的消息 "Started project." 记录到项目的历史记录中。
查看提交历史
git log
git log 查阅历史时,将上一步操作的人员信息都显示出来了,如果你不想显示这些,
只是想打印提交历史条目的更简单版本可这样做:
git log --pretty=oneline
第二次提交
为体现Git版本控制的强大能力,我们对项目进行修改,并提交所做的修改。
# 在 hello_world.py中在添加一条输出
print("兔C的下一专栏是针对Java的")
然后查看仓库状态
git status
输出指出,我们当前所在的分支被修改了内容的文件,还指出了尚未进行提交。
# 执行提交
git commit -am "Extended greeting"
# 查看仓库状态
git status
撤销修改
放弃当前修改,恢复到前一个可行状态
# 在 hello_world.py中添加新代码
print("Oh no,I broke the priject!")
查看仓库状态
git status
输出表名 hello_world.py中做了新的修改,但这次我们不对其进行提交,而是恢复到最后一个提交
# git checkout 用于放弃自最后一次提交后所做的修改。
# 将项目恢复到最后一次的提交状态
git checkout .# 查看状态
git status
检查以前的提交
你可以检查出提交历史中的任何提交,而不仅仅是最后一次提交,为此可在命令 git check 末尾指定该提交的引用 ID的前6个字符。
检查出以前的提交,可对其进行审核,然后返回到最后一次提交,或者放弃最近所做的工作,并选择以前的提交。
git log --pretty==onelinegit checkout "6位ID"
检查出以前的提交后,我们将离开master分支,并进入Git分离头指针状态。HEAD 表示项目的当前状态,之所以说我们处于分离状态,是因为们离开了一个命名分支,即master
要回到 master,可以对其进行检测:
git checkout master
当前,我们成功回到 master分支。除非你要使用Git的高级功能,否则在检出以前的提交后,最好不要对项目做任何修改。当然,目前各种demo中只有我们自己一个人,所以随心所欲…
恢复指定提交的命令
git reset --hard id
删除仓库
# 查看状态
git status# windows 系统下的删除命令
rmdir /s .git#删除命令
rm -rf .git
相关文章:

使用 Git 跟踪项目文件
本章内容为:用Django 写学习笔记程序第三章.2部署程序摘录,详情内容查看请跳转下方链接: 用Django 写学习笔记程序第三章.2部署程序 文章目录 使用 Git 跟踪项目文件虚拟环境中安装 gitgit 是什么git 安装完成后的简单配置创建项目忽略文件初…...
C++从零开始(day47)——set,map学习使用
这是关于一个普通双非本科大一学生的C的学习记录贴 在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料 那么开启正题 今天分享的是关于set和map的知识点 1.关联式容器 在前面&#…...

手机和电脑同步的好用记事本软件有哪些
我常常需要随手记录各种信息,以便随时查阅和使用。比如,在下班路上,我会用手机记录明天要处理的工作事项、购物清单,或是某个突然迸发的创意想法;而在办公室,我则需要在电脑上整理会议纪要、项目计划&#…...

使用CSS制作动态的环形图/饼图
使用纯 CSS Animation conic-gradient 实现一个环形图。 饼图的实现思路和环形图一样,去掉中间的圆形遮盖 after 伪类元素即可。 一、构建基础样式 构建圆形节点和中间的遮盖元素。 <style>body {background-color: rgb(130, 226, 255);}.circle {top: 16…...

掌握React中的useEffect:函数组件中的魔法钩子
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...

WPF 窗口添加投影效果Effect
BlurRadius:阴影半径 Color:颜色 Direction:投影方向 ShadowDepth:投影的深度 <Window.Effect><DropShadowEffect BlurRadius"10" Color"#FF858484" Direction"300" ShadowDepth&quo…...

Gitlab CICD 下载artifacts文件并用allure打开,或bat文件打开
allure命令行打开aritfacts报告 首先下载allure.zip,并解压 配置环境变量 使用命令行打开allure文件夹 allure open 2024-03-11-14-54-40 2024-03-11-14-54-40 包含index.html Bat文件打开artifacts There are 2 html reports in the download artifacts.zip S…...

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:NavRouter)
导航组件,默认提供点击响应处理,不需要开发者自定义点击事件逻辑。 说明: 该组件从API Version 9开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 必须包含两个子组件,其中第二个子组…...

Django环境下使用Ajax
Django环境下使用Ajax 目录 Django环境下使用Ajax介绍前情提要示例JS实现Ajax实现 传递JSON格式数据传递文件数据Django自带的序列化组件基于jsonresponse序列化数据基于Django自带的serializers 注册示例 介绍 AJAX 的主要目标是在不刷新整个页面的情况下,通过后台…...

官方安装配置要求服务器最低2核4G
官方安装配置要求服务器至少2核、4G。 如果服务器低于这个要求,就没有必要安装,因为用户体验超级差。 对于服务器CPU来说,建议2到4核就完全足够了,太多就浪费了,但是内存越大越好,最好是4G以上。 如果服务器…...

Apache的运用与实战
WEB服务器 1、WEB服务简介 # 目前最主流的三个Web服务器是Apache、Nginx、 IIS。 - WEB服务器一般指网站服务器,可以向浏览器等Web客户端提供网站的访问,让全世界浏览。 - WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息…...

【漏洞复现】网康NS-ASG应用安全网关 index.php SQL注入漏洞(CVE-2024-2330)
0x01 产品简介 网康科技的NS-ASG应用安全网关是一款软硬件一体化的产品,集成了SSL和 IPSecQ,旨在保障业务访问的安全性,适配所有移动终端,提供多种链路均衡和选择技术,支持多种认证方式灵活组合,以及内置短…...

网络基础『 序列化与反序列化』
🔭个人主页: 北 海 🛜所属专栏: Linux学习之旅、神奇的网络世界 💻操作环境: CentOS 7.6 阿里云远程服务器 文章目录 🌤️前言🌦️正文1.协议的重要性2.什么是序列化与反序列化&…...

腾讯云和阿里云4核8G云服务器多少钱一年和1个月费用对比
4核8G云服务器多少钱一年?阿里云ECS服务器u1价格955.58元一年,腾讯云轻量4核8G12M带宽价格是646元15个月,阿腾云atengyun.com整理4核8G云服务器价格表,包括一年费用和1个月收费明细: 云服务器4核8G配置收费价格 阿里…...

Git误操作补救错失:恢复误删的本地分支、将某个提交从一个分支复制到另一个分支
一、恢复误删的本地分支 作为一枚强迫症,没用的分支总是喜欢及时删删删删掉删掉统统删掉,结果今天发现有些分支还是应该保留。 比如,①前段时间切了个分支用来专门做图表,但因为需求还没有最终确定,已经上线了测试服而…...
MySQL系列-分析SQL性能
查找慢SQL MySQL 慢查询日志是用来记录 MySQL 在执行命令中,响应时间超过预设阈值的 SQL 语句。 开启慢查询 # 开启慢查询日志功能 SET GLOBAL slow_query_log ON; # 慢查询日志存放位置 SET GLOBAL slow_query_log_file /var/lib/mysql/ranking-list-slow.log…...

Java 学习和实践笔记(34):对象的转型(casting)
对象的转型(casting)有两种,一种是向上转型,一种是向下转型。 向上转型:父类引用指向子类对象。这属于自动类型转换,编译器会自动完成。 上一节的多态中,形参为父类Animal, 但是调用时实参为子类对象Dog&…...

【Qt】不透明指针(Opaque Pointer)在Qt源码中的应用
目录 什么是不透明指针(Opaque Pointer)不透明指针在Qt代码中的应用Qt中与不透明指针相关的一些宏 什么是不透明指针(Opaque Pointer) GeeksforGeeks中给的定义如下: An opaque pointer is a pointer that points to …...

【Python】牛客网—软件开发-Python专项练习
专栏文章索引:Python 1.(单选)下面哪个是Python中不可变的数据结构? A.set B.list C.tuple D.dict 可变数据类型:列表list[ ]、字典dict{ }、集合set{ }(能查询,也可更改)数据发生改…...

HBase分布式数据库的原理和架构
一、HBase简介 HBase是是一个高性能、高可靠性、面向列的分布式数据库,它是为了在廉价的硬件集群上存储大规模数据而设计的。HBase利用Hadoop HDFS作为其文件存储系统,且Hbase是基于Zookeeper的。 二、HBase架构 *图片引用 Hbase采用Master/Slave架构…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...

关于easyexcel动态下拉选问题处理
前些日子突然碰到一个问题,说是客户的导入文件模版想支持部分导入内容的下拉选,于是我就找了easyexcel官网寻找解决方案,并没有找到合适的方案,没办法只能自己动手并分享出来,针对Java生成Excel下拉菜单时因选项过多导…...
LLaMA-Factory 微调 Qwen2-VL 进行人脸情感识别(二)
在上一篇文章中,我们详细介绍了如何使用LLaMA-Factory框架对Qwen2-VL大模型进行微调,以实现人脸情感识别的功能。本篇文章将聚焦于微调完成后,如何调用这个模型进行人脸情感识别的具体代码实现,包括详细的步骤和注释。 模型调用步骤 环境准备:确保安装了必要的Python库。…...
鸿蒙(HarmonyOS5)实现跳一跳小游戏
下面我将介绍如何使用鸿蒙的ArkUI框架,实现一个简单的跳一跳小游戏。 1. 项目结构 src/main/ets/ ├── MainAbility │ ├── pages │ │ ├── Index.ets // 主页面 │ │ └── GamePage.ets // 游戏页面 │ └── model │ …...

算术操作符与类型转换:从基础到精通
目录 前言:从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符:、-、*、/、% 赋值操作符:和复合赋值 单⽬操作符:、--、、- 前言:从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...
CppCon 2015 学习:Time Programming Fundamentals
Civil Time 公历时间 特点: 共 6 个字段: Year(年)Month(月)Day(日)Hour(小时)Minute(分钟)Second(秒) 表示…...
window 显示驱动开发-如何查询视频处理功能(三)
D3DDDICAPS_GETPROCAMPRANGE请求类型 UMD 返回指向 DXVADDI_VALUERANGE 结构的指针,该结构包含特定视频流上特定 ProcAmp 控件属性允许的值范围。 Direct3D 运行时在D3DDDIARG_GETCAPS的 pInfo 成员指向的变量中为特定视频流的 ProcAmp 控件属性指定DXVADDI_QUER…...
【大厂机试题+算法可视化】最长的指定瑕疵度的元音子串
题目 开头和结尾都是元音字母(aeiouAEIOU)的字符串为元音字符串,其中混杂的非元音字母数量为其瑕疵度。比如: “a” 、 “aa”是元音字符串,其瑕疵度都为0 “aiur”不是元音字符串(结尾不是元音字符) “…...