代码版本管理笔记 | Python 程序员也应该会的 Git 基础操作
第一时间关注Python技术干货!
设置配置信息
# 初始配置
git config --global user.name "你的昵称"
git config --global user.email "你的邮箱"
# 如果写错了
# 命令行修改如下
git config --global --replace-all user.name "your user name"
git config --global --replace-all user.email"your user email"
# 修改文件的方式,主要是修改位于主目录下 .gitconfig 文件。在 Linux 和 Mac 中,可以通过 vim 命令进行直接编辑,比如 vim ~/.gitconfig
# Windows 系统同样位于用户主目录下,假设你当前的用户是 administrator ,那么对应的配置文件的路径应该是 C:\Users\administrator\.gitconfig
# 下面的位置
[user]
name = your user name
email = your user email
常用操作
# 检查改动文件
git status
# 回滚文件
git checkout [filename]
# 添加文件到暂存区
git add [filename]
# 提交代码
git commit . -m "备注"
# 推送代码
git push
git 版本比较
比较工作区的变动
git diff [path/filename] [path/filename]
比较暂存区和版本库的变动
git diff --cached [filename]
与指定版本做比较
# 1
git log # 找到要对比的版本的 hash 值
# 2 工作区文件与指定版本比较
git diff hash值
# 3 暂存区与指定版本比较
git diff --cached hash值
与最新版本做比较
将未正式提交的代码(包含工作区与暂存区)与最新的 commit 记录进行比较,虽然也可以通过指定 commit 的 hash 值进行,但是却很不方便,需要先获取到 hash 值,这里推荐使用与 HEAD 比较的方式
git diff HEAD
对比两个历史记录
首先通过 git log 命令获取到需要查看的记录 hash 值,然后再找到这个记录的上一个版本的 hash 值
git diff hash值1 hash值2
git 权限控制
# 处理版本权限冲突的方法
# 当前版本库
git config core.filemode false
# 全局版本库
git config --global core.filemode false
忽略指定文件或目录
# 在根目录下创建 .gitignore 文件
vm .gitignore
# 将要忽略的文件写入
检查某一个文件提交不上的问题
git check-ignore -v [filename]
强制添加某一个文件至忽略的清单
git add -f [filename]
设置忽略排除
假如我们需要将某一个文件下的大部分文件都忽略,只提交某一个或多个文件
# 需要先设置 ignore 整个文件夹
1、vim .gitignore
# 设置将 test 整个文件夹忽略
2、输入 test/*
# 设置取消忽略 test 文件夹下的 index.html 文件
3、输入 !test/index.html
忽略已经提交的文件
一不小心把某一个原本应该忽略的目录提交到了版本控制器中,再使用 .gitignore 文件去忽略的时候,发现无论如何都无法再次将其忽略
忽略已存在的文件
我们需要先删除掉该文件的缓存,才能让他成功忽略,所以正确的操作步骤是先在 .gitignore 中设置该文件为忽略,然后执行删除缓存命令
git rm --cached xxx/xxx
忽略已存在的文件夹
忽略已存在的文件夹方式和上面基本一致, 编辑 .gitignore 文件,在文件中加入要忽略文件夹然后使用删除该文件夹的缓存
git rm -r --cached xxx/
reset 恢复
这个命令可以撤销我们最近一次提交
git reset HEAD^
指定 commit id 恢复到指定记录
git log
git reset [commit id]
对了,看完记得一键四连,这个对我真的很重要。
评论