使用版本管理工具,可以实现 版本管理、多人协作、工作量统计、跟进软件开发过程 等等。
1 本地版本控制
在本地记录每次文件的更新。
缺点:缺乏组织性
2 集中式版本控制SVN
所有的版本都放在一个单独的服务器上,每个开发人员直接从服务器上进行读写。
缺点:服务器挂了咋办,哪怕定期备份,但还是会有一定程度上的数据丢失。联网才能工作。
3 分布式版本控制Git
每个用户电脑上都同步了所有版本,可以在离线时本地提交,等联网了push到服务器上去。
优点:只要有一个用户的设备没有问题,就可以恢复所有的数据。
缺点:占用空间。
官网下载太慢了,还是镜像快,直接下载最新版exe:http://npm.taobao.org/mirrors/git-for-windows/
由于我已经安装了Git,为了展示完整的过程,我先把它卸载了:
1 删除相关环境变量
2 控制面板中卸载Git工具
打开下载的安装包,无脑下一步安装。
安装好后会有三个工具可供使用,Git Bash是linux风格的命令行, 最常用 ;Git CMD是windows风格的命令行;Git GUI是图形化操作界面。
git config -l
直接操作安装目录下的配置文件即可:
D:\setup\Git\etc\gitconfig --system 系统配置
C:\Users\14095.gitconfig --global 用户全局
git config --global user.name "xiaolongxia291"
git config --global user.email "**.com"
注意工作目录尽量不要有中文。
一些重要命令如下:
- 1 创建一个文件夹
- 2 进入文件夹,按住shift然后鼠标右键选中Git bash
- 3 执行初始化工作空间命令:git init
初始化成功会显示Initialized empty Git repository in D:/0 project/git-demo/.git/
- 4 关联远程仓库
git remote add origin https://github.com/**.git
git clone 粘贴的url
# 执行成功会显示:
Cloning into 'enterprise-programming-question-bank'...
remote: Enumerating objects: 107, done.
remote: Counting objects: 100% (107/107), done.
remote: Compressing objects: 100% (59/59), done.
remote: Total 107 (delta 28), reused 89 (delta 18), pack-reused 0
Receiving objects: 100% (107/107), 73.56 KiB | 308.00 KiB/s, done.
Resolving deltas: 100% (28/28), done.
# 把所有文件添加到暂存区
git add .
# 添加指定的文件到暂存区
git add xx文件
git commit -m "提交信息"
在.gitignore中配置,示例:
README.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/
# 执行命令生成公钥,全部回车
ssh-keygen
用vscode打开id_rsa.pub,复制粘贴里面的公钥
然后去github上添加公钥https://github.com/settings/keys:
github在这看分支。分支说白了就是用来管理版本的,不同分支互不打扰,可以并行执行。
注意,要先commit才能操作分支。
# 本地
git branch
# 远程
git branch -r
# 创建一个分支
git branch 分支名
# 删除一个分支
git branch -d 分支名
# 切换到分支
git checkout 分支名
# 删除远程分支
git push origin --delete 分支名
git branch -dr 分支名
git push -u origin 分支名
【完结!】
教程:跳转