Git
是目前世界上最先进的分布式版本控制系统
版本管理的相关术语
- 检出: 将软件配置(文件)从配置库中提取出来
- 检入: 将软件配置项(文件)放回配置库
- 主干版本: 标准配置库
- 分支版本: 为了某些特殊要求
和主干版本有差异的配置库
- 合并:
- A,B两个版本,将A的内容附加到B中
- A,B两个版本,A和B合并,形成新版本C
-历史记录:
文件变更的详细过程
-回滚:将配置退回到之前的某个状态
Git的安装
sudo apt-get install git
Git的配置
1)/etc/gitconfig文件:作用于系统所有用户
2)~/.gitconfig文件:用户目录下,作用于当前用户
3)工作目录下.git/config文件,作用于当前目录
优先级:工作目录>用户配置>系统配置
配置
git config --global user.name 姓名
git config --global user.email 邮箱
查看
cat ~/.gitconfig
查看已有配置: git config --list
git基本命令
1) init:
执行如下几个命令:
cd ~ # 进入用户主目录
mkdir gittest # 新建一个空目录
cd gittest
git init # 初始化,成功后当前会多出.git隐藏目录
2) add: 添加文件内容至索引
vim a.txt # 新建文本文件
git add a.txt # 将a.txt添加到仓库中
git status # 查看当前目录状态
3)commit: 提交变更至本地仓库
git commit 文件名 -m 注释信息
示例: git commit a.txt -m "create"
* 必须写注释
4)diff: 查看工作目录和仓库文件的差异
例如: git diff a.txt
5)reset: 版本的回滚
git reset --hard HEAD^ 回退到上一个版本
git reset --hard HEAD^^ 回退到上上一个版本
git reset --hard HEAD~n 回退到前面第n个版本
分支管理
分支操作
- 查看所有分支: git branch
列出所有版本,带*表示当前所在分支
- 创建分支版本
git branch 分支版本名称
e.g.
git branch dev #创建名称为dev的分支版本
- 切换分支版本
git checkout 分支版本名称
e.g.
git checkout dev #切换到dev分支下
- 创建并切换分支
git checkout -b beta #创建并切换到beta分支下
- 版本合并:
git merge beta #把beta版本合并到当前分支
第一步: 进入到beta分支
git checkout beta
第二步: 修改a.txt,并提交(提交到beta分支)
第三步: 切换到dev分支
git checkout dev
第四步: 执行合并
git merge beta #把beta分支合并到当前分支
- 删除分支:
git branch -d beta
删除beta分支,如果没有合并则不允许删除
标签管理
1)如果达到一个重要节点, 并希望永远记住那个提交
的快照, 可以使用标签
2)标签可以理解成一个指向某次提交的指针,
但不能移动
3)标签命令: git tag 标签名称.例如:
git tag v1.0 #将v1.0标签打到最新版本上
git tag #查看所有标签
git tag v0.9 0771ec3 #将v0.9标签打到制定的0771ec3版本上
git reset --hard v0.9 #退回到v0.9标签状态
github远程仓库
第一步:在gitee或github上注册账号
第二步:创建项目,并且拷贝地址
第三步:在工作目录下加入远程仓库地址
git remote add 名称 远程仓库地址
例如:
git remot add gitee https://gitee.com/bbsmil/git_test2.git
第四步:从远程仓库获取配置库
切换到master分支下,做一个pull操作
git pull 远程仓库名称 分支版本名称
例如: git pull gitee master
第五步: 修改工作目录文件,并且提交到本地仓库
例如: 修改a.txt后, 执行提交
git commit a.txt -m "remote test"
第六步: 推送到远程仓库
git push -u 远程仓库名称 分支版本
例如:git push -u gitee master
* 推送到gitee仓库的master分支下
调试工具
1)程序调试(debug): 程序在开发,测试,维护过程中
需要对程序测试,排除错误
2)调试工具:提高调试效率的工具
一般都能单步,打印变量,观察内部执行过程
3)pdb: Python自带的调试工具
4)使用:
- 启动调试: pdb3.5 tmp.py # 对tmp.py调试
- l 或 list: 查看当前代码段
- n 或 next: 执行下一行
- b 或 break: 打断点
例如: b 10 或 break 10 #在第10行打断点
- clear 1 # 删除编号为1的断点
- p 或 print: 打印变量
- s 或 step: 进入函数
- r 或 return: 从当前函数返回