使用 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
相关推荐
真的很上进1 小时前
【Git必看系列】—— Git巨好用的神器之git stash篇
java·前端·javascript·数据结构·git·react.js
小小安于乱1 小时前
git 更换远程地址的方法
git
小诸葛的博客1 小时前
pg入门18—如何使用pg gis
数据库
林太白2 小时前
❤Node09-用户信息token认证
数据库·后端·mysql·node.js
我爱娃哈哈2 小时前
MySQL 优化器:理解与探秘
数据库·mysql
尘浮生2 小时前
Java项目实战II基于Java+Spring Boot+MySQL的大型商场应急预案管理系统(源码+数据库+文档)
java·开发语言·数据库·spring boot·spring·maven·intellij-idea
MXsoft6183 小时前
监控易监测对象及指标之:全面监控DB2_linux数据库
数据库·oracle
尘浮生3 小时前
Java项目实战II基于Java+Spring Boot+MySQL的校园社团信息管理系统(源码+数据库+文档)
java·开发语言·数据库·spring boot·mysql·spring·maven
petaexpress3 小时前
分布式云化数据库的优缺点分析
数据库·分布式
失心疯_20233 小时前
Mysql_使用简介
数据库·sql·mysql·关系型数据库·ddl·dml·mysql教程