我在github上做了一个bower包,因为我需要一些增强功能,而且mantainers不会对pull请求做出反应.
我更改了一点bower.json(更改名称,版本并在作者中添加自己),应用我的增强功能,添加了新标签,并推送(我需要一个新标签,因为bower存储库确实发布了新的软件包版本仅限新标签).
然后我在bower repo上注册了分叉包,并修改了名称.
我不使用分支,以避免复杂化:主分支上的一切(我是唯一的开发人员,目前是该软件包的唯一用户......).
到目前为止,在阳光下一切都很好.
现在,我的问题(肯定是由于我对git的了解有限):当我必须对分叉的凉亭包进行更改时,我会:
git tag -a v1.2.3 -m "my latest enhancement"git add -A && git commit -m "committing my latest enhancement" && git push --tags origin master然后,如果我在github中检查我的存储库,我会看到master分支更新(使用最新版本),但如果我切换到最新标记(例如"1.2.3"),它不是最新的..这样,这些变化对于凉亭用户来说是不可用的(只有我自己,目前...... :-).
我的工作流程有何缺陷?
我对标签的理解有多么缺陷?
您似乎先标记并稍后提交.
您应该首先提交您的工作,然后在标记它时,它将应用于最新的提交.
完整的流程是:
.
git add -A
git commit -m "My changes"
git tag -a v1.2.3 -m "My last tag"
git push --tags origin master
Run Code Online (Sandbox Code Playgroud)
您始终可以使用"gitk"等可视化工具来查看标记实际指向的位置.