使用 Git 跟踪项目文件

本章内容为:用Django 写学习笔记程序第三章.2部署程序摘录,详情内容查看请跳转下方链接:

用Django 写学习笔记程序第三章.2部署程序

文章目录

使用 Git 跟踪项目文件

虚拟环境中安装 git

python 复制代码
# 检查当前装有git的版本信息
git --version

如果你安装了git,会正确显示出版本信息:

反之,命令行窗口会提示不是系统命令。

那你还需要自己手动去下载 git

git 下载链接

如果有小伙伴对 git了解的粗微甚少,为了文章内容更加友好这里插上一些关于git的更多内容

git 是什么

Git 是一个版本控制系统,用于跟踪文件和文件夹的更改。它能够记录每个版本的更改,并允许用户比较不同版本之间的差异。Git是开源的,具有分布式特性和本地单机操作的能力。它适用于本地文件和代码版本管理,可以通过客户端工具如TortoiseGit连接到安装的Git版本控制系统进行操作。

git 安装完成后的简单配置

python 复制代码
# git 需要知道你的用户名和电子邮箱地址,因为在操作项目时,
# 哪怕只是我们自己一个人,也需要知道是谁谁进行了操作

git config --global user.name "设置用户名"
git config --global user.email "设置电子邮箱地址@"

创建项目

我们在系统中随意创建一个名为git_practice的文件夹,并创建一个输出 hello Git world! 的程序,给其命名为 hello_world.py 存储于刚才创建的 git_practice 文件夹内。

python 复制代码
print("hello Git world!")

接下来,我们就用这个创建好的简易程序对git进行探索。

忽略文件

扩展名为 .pyc 的文件是根据 .py 文件自动生成的,我们需要让 Git跟踪它们。这些文件存储在 __pycache__中。为了让 Git 忽略这个目录,创建一个名为.gitignore的特殊文件,这个文件名以句点开头,且没有扩展名。

pyhon 复制代码
# 并在这个文件中添加下行代码
__pycache__/
Git忽略目录__pycache__中的所有文件。.gitignore可避免项目混乱。

初始化仓库

直接打开该路径的终端窗口

录入命令:

python 复制代码
git init

输出表名:

Git 在git_practice中初始化了一个空仓库。仓库是程序中被 GIt主动跟踪的一组文件。Git用来管理仓库的文件都存储在隐藏的 .git/中.

检查状态

想要执行其它操作之前,我们先对项目状态进行检查

python 复制代码
git status
在Git中,分支是项目的一个版本,从这里的输出可知,我们位于master分支上,
每次查看项目的状态时,输出都将指出位于 master上。

将文件加入到仓库中

下面我们将这两个文件加入到仓库中,并再次检查其状态

python 复制代码
# 将项目中未被跟踪的所有文件加入到仓库中。
# 它不提交这些文件,只是让Git开始关注它们。
git add .

# 检查状态
git status

执行提交

我们来执行第一次的提交操作。

python 复制代码
git commit -m "Started project."
命令 git commit -m "message" 以拍摄项目的快照。
标志 -m 让 Git接下来的消息 "Started project." 记录到项目的历史记录中。

查看提交历史

python 复制代码
git log
git log 查阅历史时,将上一步操作的人员信息都显示出来了,如果你不想显示这些,
只是想打印提交历史条目的更简单版本可这样做:
python 复制代码
git log --pretty=oneline

第二次提交

为体现Git版本控制的强大能力,我们对项目进行修改,并提交所做的修改。

python 复制代码
# 在 hello_world.py中在添加一条输出
print("兔C的下一专栏是针对Java的")

然后查看仓库状态

python 复制代码
git status

输出指出,我们当前所在的分支被修改了内容的文件,还指出了尚未进行提交。

python 复制代码
# 执行提交
git commit -am "Extended greeting"
# 查看仓库状态
git status

撤销修改

放弃当前修改,恢复到前一个可行状态

python 复制代码
# 在 hello_world.py中添加新代码
print("Oh no,I broke the priject!")

查看仓库状态

python 复制代码
git status

输出表名 hello_world.py中做了新的修改,但这次我们不对其进行提交,而是恢复到最后一个提交

python 复制代码
# git checkout 用于放弃自最后一次提交后所做的修改。
# 将项目恢复到最后一次的提交状态
git checkout .

# 查看状态
git status

检查以前的提交

你可以检查出提交历史中的任何提交,而不仅仅是最后一次提交,为此可在命令 git check 末尾指定该提交的引用 ID的前6个字符。

检查出以前的提交,可对其进行审核,然后返回到最后一次提交,或者放弃最近所做的工作,并选择以前的提交。

python 复制代码
git log --pretty==oneline

git checkout "6位ID"

检查出以前的提交后,我们将离开master分支,并进入Git分离头指针状态。HEAD 表示项目的当前状态,之所以说我们处于分离状态,是因为们离开了一个命名分支,即master

要回到 master,可以对其进行检测:

python 复制代码
git checkout master

当前,我们成功回到 master分支。除非你要使用Git的高级功能,否则在检出以前的提交后,最好不要对项目做任何修改。当然,目前各种demo中只有我们自己一个人,所以随心所欲...

恢复指定提交的命令

python 复制代码
git reset --hard id

删除仓库

python 复制代码
# 查看状态
git status

# windows 系统下的删除命令
rmdir /s .git

#删除命令
rm -rf .git
相关推荐
挥之以墨11 分钟前
【git实践】分享一个适用于敏捷开发的分支管理策略
git·敏捷流程
xxxibolva2 小时前
Git 使用技巧
git
猿月亮2 小时前
MySQL自启动失败(MySQL不能开机自启)解决方案_MySQL开机自启疑难杂症解决,适用Win11/Win10
数据库·mysql
酷炫码神2 小时前
MySQL查询
数据库·mysql
大明湖的狗凯.2 小时前
MySQL 中的排序:索引排序与文件排序
数据库·mysql·oracle
XMYX-02 小时前
深入解析 Django 中数据删除的最佳实践:以动态管理镜像版本为例
数据库·django·sqlite
Lostgreen2 小时前
SQL on Hadoop
数据库·hadoop·笔记·分布式·sql·学习
Karoku0663 小时前
【docker集群应用】Docker常用命令
运维·数据库·docker·容器
小小宇宙中微子3 小时前
MySQL INSERT CRTATE DELETE DORP UPDATE WHERE 的用法
数据库·mysql
swiftlzk3 小时前
redmi 12c 刷机
android·数据库