git
下载git
win下直接默认安装即可
参考:https://www.cnblogs.com/pinefantasy/category/937795.html
书籍:git详解
本地版本控制:
- cd到目标文件夹下
- git init 初始化,可以理解为建立一个环境
- 配置用户邮箱,已经用户名:
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
- 本地管理版本
1 保存一个文件:git add 文件名 --》 git commit -m "备注"
2 保存当前所有文件 : git add . --》 git commit -m "备注"
3 备注必须加
- 本地回滚
1 回滚到上个版本 : git reset -- hard HEAD^
2 回滚到选定的版本: git reset -- hard md5
比如 $ git reset --hard 3b611e7017bcb
MD5 获取: git log 或 git log --pretty= oneline,两者效果不一样
3 暂存区回滚到工作区: git checkout
- 查看回滚操作的历史命令: git reflog
- 撤回 add: git checkout
本地创建分支:
- 什么是分支,
分支的目的 :同时开发一个项目的多个功能
- git branch 分支名称 创建分支
- git checkout 分支名称 切换分支
- git branch -b 分支名称 创建并切换到指定分支
- git branch 查看所有分支
- git branch -d 分支名称 删除分支
- git merge 分支名称 将指定分支合并到当前分支
- git checkout 参数详解
-
创建分支并保存工作:
- git branch 分支名称
- git checkout 分支名称
- 工作做完,保存,
git add .
git commit -m "备注"
从云端下载代码:
- git clone 仓库url
查看云端仓库:
- git remote show origin
云端版本控制
- 本地有代码,想上传到云端
- 在网站上新建一个仓库,比如叫ggggg
- 通过git bash 进入项目文件夹
- git remote add o1 https://github.com/jjjgege222/ggggg , o1是一个别名
- 输入账号密码
- git push o1 master ,效果是把所有版本上传到仓库
- 本地有改动的代码,云端有代码,想要上传到云端
- 给本地仓库提交改变 ,效果是本地多一个新的commit
- git push o1 master , 用别名指定云端仓库,更新
协同开发,提交更改
用户A: touch 4.py git add . git commit -m '功能4' git push origin master 用户B: touch 5.py git add . git commit -m '功能5' git push origin master # 报错,因为GitHub中已经有人提交新代码 git fetch origin master git rebase(或者 merge ) origin/master git push origin master
设置 上传云端应该忽略的文件:
在项目文件夹中 新建一个.gitignore文件
在里面写忽略文件的文件名,一般包括操作系统生成的中间文件,编程语言运行时产生的非必要文件,配置文件等
各编程语言常见忽略文件: https://github.com/github/gitignore
特性:如果把云端已有的文件加入了忽略列表 本地发生修改然后同步时,依然会提交更改