本文主要是介绍坚果云+Git实现精准版本控制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
搭建初衷
工作后,经常遇到各种版本控制问题;在此之前,一直采用文件重命名的方式来标记各个文件的主要职能。但随时间的推移,一个致命性的问题就暴露出来了——项目结束很久了,安排你再次维护时,各种重名命的文件足以让人奔溃
另一个重要原因,之前一直在使用SVN,现在工作中越来越多的项目都在使用git进行管理;想多练习练习git的各种用法,以期更好的服务工作
可选方案
- gitee/github
- git+坚果云+阿里云盘(可选,主要解决大型附件的保存)
选型
不想折腾的gitee就能满足日常需要
- github因国内网络不顺畅,直接忽略
- gitee 单仓库大小上限为 500M,单文件最大 50M,用户总仓库容量为 5G;这些限制,增加了后期使用的不确定性(项目较多时总体容量不足、存在单个文件大于50M等问题)
- 坚果云每月有1G的上传流量、3G下载流量、总容量无限制、带自动同步功能;Git免费开源,两者组合可以让我们拥有免费无上限的版本控制服务器
搭建步骤
实现思路:
1. 将坚果云同步文件夹作为git的远程仓库
2. 创建一个文件夹,管理所有项目;并交由git管理
第一步:创建坚果云同步盘
在电脑上创建一个文件夹,右键 选择坚果云->同步该文件夹
第二步:将坚果云同步盘初始化为git裸库(远程库)
裸库无工作空间,只存储相关纪录(具体含义请百度)。裸库目录结构如图
git init --bare
第三步:建立项目管理文件夹,初始化后交由git管理(本地库)
日常开发文档都存储在此处,对于重要的版本可以使用git命令进行管理
Ⅰ、初始化项目文件夹
使用git init初始化,内部包含工作空间,可以通过可视化工具进行项目管理
git init
# 若git命令行中的汉字不能正常显示时,可使用以下命令处理
git config --global core.quotepath false
Ⅱ、关联本地库与远程库(重点步骤)
前几次尝试时,总是无法将本地库中的文件推送到远程库(也就是坚果云同步文件夹)
# 注意事项:在git中,windows文件系统会被虚拟为linux文件系统形式。也就是会给各盘符添加一个根节点“/”,“/d/” - 表示D盘
# 给本地库绑定远程库
git remote add orig /d/Supporting/JGYun/WorkOutcome/
# 推送本地库内容到远程库
git push orig HEAD:master
git push orig HEAD:master 命令确实可以将本地库内容推送到远程库;但细心的你会发现为啥不是简单的git push,而且直接使用git push不能成功推送内容;
使用以下命令,配置远程存储库;就可以使用git push直接推送
注意:/d/Supporting/JGYun/WorkOutcome 是坚果云同步文件夹(即远程库)
git push --set-upstream /d/Supporting/JGYun/WorkOutcome master
提交代码时如果写错注释,可以使用此命令修改
git commit --amend
版本间切换
# 查看版本号
git reflog
git reset --hard 版本号
从远程库拉取代码
git clone /d/Supporting/JGYun/WorkOutcome
附录
一、git使用中乱码的处理
Ⅰ、git status 乱码
git config --global core.quotepath false
Ⅱ、git commit 乱码
git config --global i18n.commitencoding utf-8
Ⅲ、git status 乱码
git config --global i18n.logoutputencoding utf-8
注意:如果是Linux系统,需要设置环境变量 export LESSCHARSET=utf-8
这篇关于坚果云+Git实现精准版本控制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!