Git tag
作为版本管理工具,Git可以对某个版本打上标签(tag),表示本版本为发行版。在发布软件,以及使用CocoaPods创建依赖库等情况时,需要对其版本使用标签注释。故简单总结一下添加tag的方式。
新建tag:
git tag -a <版本号> -m "<备注信息>"
$git tag -a sdk_doorSensor_v1.0-m "release the doorSensor SDK v1.0.0"
删除本地tag
git tag -d <版本号>
$git tag -d sdk_doorSensor_v1.0
将本地标签提交到远程仓库
前面所提到的创建标签,只是将标签添加到了本地的版本管理,我们需要在创建之后将本地标签同步到远程仓库,如Github。
推送所有标签
git push origin --tags
[if !supportLists]· [endif]1
推送指定版本的标签
git push origin <版本号>
[if !supportLists]· [endif]1
删除远程仓库的标签
同创建本地标签一样,删除了本地标签之后也要同时删除远程仓库的标签。
新版本Git (> v1.7.0)
git push origin --delete <版本号>
新旧版本通用方法
旧版本Git并没有提供直接删除的方法,而我们可以通过将一个空标签替换现有标签来实现删除标签,即如下命令
git push origin :refs/tags/<版本号>
Git 空文件夹上传
在项目开发中,我们有时候会遇到要上传空文件夹到远程服务器的情况,在这里我提供了将空文件夹上传到github仓库中的方法的完美方案(创建无关文件,删除无关文件)。众所周知,git仅仅跟踪文件的变动,不跟踪目录。
方法:先在目录下的所有空文件夹下,创建一个无关文件(.gitxxx文件)。
在项目的根目录下输入命令行(用Git Bash Here打开),
find . \( -type d -empty \) -and \( -not -regex ./\.git.* \) -exec touch{}/.gitkeep \;
这样,在目录下的所有空文件夹下,就有.gitkeep文件了。此时,你可以上传此项目到远程服务器了,相信大家还有一个困惑,空文件夹下的.gitkeep文件,并不是我们 想看到的,所有在开发到一定阶段时,我们可以通过命令行删除所有的.gitkeep文件(无关文件)
删除当前目录下的.gitkeep文件
find ./ -type f -name '.gitkeep' -delete
Linux下执行如下命令即可;
find . -type d -empty
-exec touch {}/.gitignore \;
这样,你就可以把目录下的所有.gitkeep文件删除了。