git:创建标签并推送到远程:为什么标签在远程主机后面?

标签 git github bower

我确实在 github 上 fork 了一个 bower 包,因为我需要一些增强,而维护者不会对 pull 请求使用react。

我更改了一些 bower.json(更改名称、版本并将我自己添加到作者中),应用我的增强功能,添加一个新标签,然后推送(我需要一个新标签,因为 bower 存储库确实发布了新的仅在新标签上打包版本)。
然后我用修改后的名称在 bower repo 上注册了 fork 包。

我不使用分支,以避免复杂化:master 分支上的所有内容(我是唯一的开发人员,目前是该包的唯一用户...)。

到目前为止,阳光下一切都是美好的。

现在,我的问题(肯定是因为我对 git 的了解有限):当我必须对 fork 的 bower 包进行更改时,我会这样做:

  • 将我的更改应用于源
  • 用标签标记更改: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”),它不是 最新... 这样,更改不适用于 Bower 用户(目前只有我自己... :-)。

我的工作流程有什么缺陷?
我对标签的理解有什么缺陷?

最佳答案

看来您是先标记后提交。

你应该首先提交你的工作,然后当你标记它时,它将应用到最新的提交。

完整的流程是:

  • 应用您的更改,然后:
  • 更新 bower.json 的“版本”字段

.

git add -A
git commit -m "My changes"
git tag -a v1.2.3 -m "My last tag"
git push --tags origin master

您始终可以使用“gitk”等可视化工具来查看标签实际指向的位置。

关于git:创建标签并推送到远程:为什么标签在远程主机后面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38186079/

相关文章:

maven - 无法运行任务 : 'bower --allow-root install' failed

javascript - 在 AngularJS 中的多个项目之间共享代码

git - git hotfix 分支的目的

git - CocoaPods `pod install` 错误 : cannot open FETCH_HEAD: Permission denied

javascript - 指示 Bower 默认使用精确版本,而不是范围

Github |获取不属于分支的提交

git - 当 `git add --patch` 编辑很尴尬时,如何准备清晰的差异?

git - Git 会强制推送覆盖/删除标签吗

git - 强制更新当前分支 - 怎么样?

wordpress - 如何修复 Hugo CMS 中 `found no layout file for "` 的错误 "page"HTML”?