在进行数据分析的时候,往往会需要进行代码、分析文件的多次版本更替。使用git工具可以更好的控制版本,记录下更新的日志,记录版本之间的差异。
记录一下我常用的几个git的功能。
xxxxxxxxxx
# 创建本地的git库
git init
# 添加远程仓库链接
git remote add origin <url>
#可以设置多个远程库地址的
git remote add <remote name> <url>
# 从远程仓库下载
git pull origin master
# 添加修改
git add .
# 准备提交的版本信息
git commit -m "message"
# 或使用下面的命令,打开内置的编辑器,可以写更多的commit信息
git commit
# commit以后,push前想要修改commit信息
git commit --amend
# 提交本地修改到远程仓库
git push origin master
# 查看git提交历史
git log
git log --oneline # 以更简洁的方式查看提交历史
#图形化界面查看git的提交历史
gitk
# 回退到上一版本
git reset --hard HEAD^
# 查看本地git库的配置信息(如origin的网址)
git config --local --list
# 创建新分支
git checkout -b <new branch name>
# 如果只是切换分支
git checkout <branch name>
# 合并本地commit,处理<commit-id>以后的commit,不包括<commit-id>
git rebase -i <commit-id>
下面是一些不常用的命令:
xxxxxxxxxx
# 查看本地分支,l=local
git branch -l
# 查看远程分支,r=remote
git branch -r
# 查看分支详细信息
git branch -v
xxxxxxxxxx
git submodule add <url>
# “#”号后面写注释
*.md # 忽略指定格式(md)的文件
fig/* # 忽略指定文件夹下(fig)的所有文件
在本地库的根目录保存为.gitignore
文件。
xxxxxxxxxx
# 全局设置,设置版本提交的用户名和邮箱
git config --global user.name=<起一个你喜欢的名字>
git config --global user.email=<your email address>
# 设置编辑commit的编辑器
git config --global core.editor <path to your editor>
# 设置git bash和git图形界面的语言编码
git config --global gui.encoding utf-8
github和gitee统计提交次数都是按照提交邮箱带来统计的。因此只有在git config中正确设置了提交邮箱,才能把自己的提交次数给统计进去。一定要把本地git库中的提交邮箱和gitee中设置的提交邮箱保持一致。
我的台式机上git bash的全局设置中email是gmail邮箱,但matlab代码库提交到gitee上是按照163邮箱作为提交邮箱统计的。所以我很长一段时间都没有提交记录。
我台式机上还有很多其他的库,要提交到github上,所以全局设置中的email不能改变。此时我可以改变matlab代码库的局部设置,如下
xxxxxxxxxx
# 提交用的名字,倒是无关紧要
git config --local user.name=<your name>
# 正确设置提交邮箱,这很重要
git config --local user.email=cnqdcyq@163.com