2794

リモートのGitリポジトリをラップトップに複製した後、タグを追加したかったので、実行しました

git tag mytag master

git tagラップトップで実行すると、タグmytagが表示されます。次に、これをリモートリポジトリにプッシュして、すべてのクライアントにこのタグを設定したいので、実行しgit pushましたが、次のメッセージが表示されました。

すべてが最新です

また、デスクトップに移動して実行するgit pullと、git tagタグが表示されません。

また、プロジェクト内のファイルに小さな変更を加えてから、サーバーにプッシュしようとしました。その後、サーバーからデスクトップコンピューターに変更をプルできましたが、デスクトップコンピューターで実行しているときはまだタグがありませんgit tag

すべてのクライアントコンピューターがタグを表示できるように、タグをリモートリポジトリにプッシュするにはどうすればよいですか?

4

12 に答える 12

4547

単一のタグをプッシュするには:

git push origin <tag_name>

そして、次のコマンドはすべてのタグをプッシュする必要があります(非推奨):

# not recommended
git push --tags
于 2011-03-04T15:40:30.443 に答える
1408

git push --follow-tags

これは、Git1.8.3で導入された適切なオプションです。

git push --follow-tags

両方のコミットと、両方のタグのみをプッシュします。

  • 注釈付き
  • プッシュされたコミットから到達可能(祖先)

これは正気です:

  • タグの衝突を避けるために、注釈付きのタグのみをリモートにプッシュし、ローカル開発用に軽量のタグを保持する必要があります。参照:注釈付きタグと注釈なしタグの違いは何ですか?
  • 無関係なブランチに注釈付きタグをプッシュしません

--tags避けるべきはこれらの理由のためです。

Git 2.4には、デフォルトでそのフラグをオンにするオプションが追加されています。これは、次のコマンドで設定できます。push.followTags

git config --global push.followTags true

または、ファイルのセクションに追加followTags = trueします。[push]~/.gitconfig

于 2014-10-18T09:12:02.713 に答える
290

特定のプッシュするには、1つのタグが次のようになります git push origin tag_name

于 2012-10-24T14:43:31.493 に答える
117

Trevorの回答を拡張するには、1つのタグまたはすべてのタグを一度にプッシュできます。

単一のタグをプッシュ

git push <remote> <tag>

これは、これを説明する関連ドキュメントの要約です(簡潔にするために一部のコマンドオプションは省略されています)。

git push [[<repository> [<refspec>…]]

<refspec>...

<refspec>パラメータの形式は…ソース参照<src>、コロン:、宛先参照<dst>…です。

リモート側の<dst>どの参照がこのプッシュで更新されるかを示します…:<dst>省略された場合、更新されるのと同じ参照<src>

タグ<tag>はと同じ意味refs/tags/<tag>:refs/tags/<tag>です。

すべてのタグを一度にプッシュ

git push --tags <remote>
# Or
git push <remote> --tags

関連するドキュメントの概要は次のとおりです(簡潔にするために一部のコマンドオプションは省略されています)。

git push [--all | --mirror | --tags] [<repository> [<refspec>…]]

--tags

refs/tagsコマンドラインに明示的にリストされているrefspecsに加えて、下にあるすべてのrefがプッシュされます。

于 2014-04-22T10:52:38.563 に答える
76

コマンドを実行するだけで、すべてのローカルタグをプッシュできますgit push --tags

$ git tag                         # see tag lists
$ git push origin <tag-name>      # push a single tag
$ git push --tags                 # push all local tags 
于 2016-11-25T08:15:31.237 に答える
63

タグは、gitpushコマンドによってリモートリポジトリに送信されません。次のコマンドを使用して、これらのタグをリモートサーバーに明示的に送信する必要があります。

git push origin <tagname>

以下のコマンドを使用して、すべてのタグを一度にプッシュできます。

git push origin --tags

gitタグ付けの詳細については、次のリソースをご覧ください。

http://www.cubearticle.com/articles/more/git/git-tag

http://wptheming.com/2011/04/add-remove-github-tags

于 2016-01-10T05:57:19.597 に答える
51

このようにタグをプッシュできますgit push --tags

于 2011-03-04T15:40:47.670 に答える
20

git push <remote-name> tag <tag-name>タグをプッシュしていることを確認するために使用しています。私はそれを次のように使用します:git push origin tag v1.0.1man git-pushこのパターンは、ドキュメント( )に基づいています。

OPTIONS
   ...
   <refspec>...
       ...
       tag <tag> means the same as refs/tags/<tag>:refs/tags/<tag>.
于 2018-04-18T18:24:16.760 に答える
18

すべてのクライアントコンピューターがタグを表示できるように、タグをリモートリポジトリにプッシュするにはどうすればよいですか?

これを実行して、gitオリジンにプッシュmytagします(例:GitHubまたはGitLab)

git push origin refs/tags/mytag

refs/tags/mytag上に示したように(文字通り)完全な「refspec」を使用することをお勧めします。これは、mytag実際v1.0.0にはあいまいな場合です(たとえば、という名前のブランチがあるためv1.0.0)。

于 2020-07-29T15:15:09.383 に答える
8

現在のブランチにタグを追加します

git tag tag_name

作成されているかどうかを確認します

git tag

リモートオリジンをプッシュします

git push origin tag_name
于 2021-12-01T09:48:14.990 に答える
2

私はこのようなことをしました:

git push --tags origin <branch-name> <tag-name>

e.g. : git push --tags origin master v2.0
于 2021-05-13T17:21:14.113 に答える
-1

利用可能なツールを使用してタグを作成することもできます。Git拡張機能とソースツリーのサンプルが1つ追加されました。

また、タグをリモートブランチに移動する必要がある場合は、[タグを元にプッシュ]を選択してタグをプッシュします。これは、他の開発者が最新のリポジトリを遅らせたときに、特定のスポットを使用または参照するのに役立ちます。

GitExtension/sourcetreeでリポジトリを開きます。

  • タグを追加するコミットを選択します。コミットを右クリックすると、タグを作成するオプションが表示されます。

GIT拡張機能: GIT拡張

ソースツリー: ここに画像の説明を入力してください

  • 他のオプションとして、トップメニューから[タグの作成]を選択できます。

GIT拡張機能: ここに画像の説明を入力してください

ソースツリー: ここに画像の説明を入力してください

  • このポップアップが開き、要件に基づいてタグ名を追加し、[タグを元にプッシュ]を選択します。しかし、好ましい。

GIT拡張機能: ここに画像の説明を入力してください

ソースツリー: ここに画像の説明を入力してください

于 2021-03-17T19:14:58.067 に答える