From patchwork Wed Jan 22 15:42:26 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Richard Earnshaw (lists)" X-Patchwork-Id: 1227350 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-518033-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha1 header.s=default header.b=wirCJ/oH; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 482qRM66qbz9sRG for ; Thu, 23 Jan 2020 02:42:38 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:to:cc :from:subject:message-id:date:mime-version:content-type; q=dns; s=default; b=i99u+2SGMxHpQEPVCcGjyDS8NWsTzD4CXdCsxH7SYAfzLpsfNY cxHfLfuzZqhWhUYPboW5DyklJV/ZcsG92lMClz8iHmOaoP8QEiMxDXgj7StQniIP kUNyw1pT1u0l5ivr81oKA1Rw2z+6DekzegHxwY5sClosGGaFGG6BDsnj8= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:to:cc :from:subject:message-id:date:mime-version:content-type; s= default; bh=EHXX0Vg4OTvW4ghd+ZNuwtRAkas=; b=wirCJ/oHTkthBs/RnATZ w7KLdbP+HmKgxh4jM+ygtqJbu9lLNXtarhDfwHzr0csherytECZO9ASkJ1qUj/F3 cQ26ET6VvLMN3pEZ8tOVuoCYRgLsN3XDEiopHr4iA+rajQhalJuVEaNc+xdDURYx H+VvCwYn5WdJ3w2FA8b4VMU= Received: (qmail 114051 invoked by alias); 22 Jan 2020 15:42:31 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 114026 invoked by uid 89); 22 Jan 2020 15:42:31 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-18.8 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=ham version=3.3.1 spammy=sk:non-fas, sk:nonfas, personal X-HELO: foss.arm.com Received: from foss.arm.com (HELO foss.arm.com) (217.140.110.172) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 22 Jan 2020 15:42:29 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 060BD106F; Wed, 22 Jan 2020 07:42:28 -0800 (PST) Received: from e120077-lin.cambridge.arm.com (e120077-lin.cambridge.arm.com [10.2.78.81]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4B46B3F68E; Wed, 22 Jan 2020 07:42:27 -0800 (PST) To: "gcc-patches@gcc.gnu.org" Cc: jakub@redhat.com, Gerald Pfeifer , Joseph Myers From: "Richard Earnshaw (lists)" Subject: wwwdocs: Document the gcc git repository layout Message-ID: Date: Wed, 22 Jan 2020 15:42:26 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 The GCC git repository makes use of some non-standard refs so that by default only the most active and useful branches and tags are fetched by a git clone. This patch documents the additional branch and tag spaces that exist on the server. Joseph, have I got all of these right? R. diff --git a/htdocs/git.html b/htdocs/git.html index 6100146e..6d3778af 100644 --- a/htdocs/git.html +++ b/htdocs/git.html @@ -197,6 +197,61 @@ To create a worktree for a new project branch based on master, do git worktree add -b project ../project master +

Repository Layout

+ +

By default, a git clone operation will only fetch the +main development, release branches and their associated tags from the +server. This will be sufficient for most users, but a number of +additional branches can also be fetched if necessary.

+ +

The following areas exist on the server:

+
    +
  • refs/heads/master - The active development version of the + compiler.
  • +
  • refs/heads/releases/* - Release branches.
  • +
  • refs/heads/devel/* - topic-specific development branches + - see Active Development Branches. + Branches and tags in this space may be moved to refs/dead once active + development is completed or abandoned.
  • +
  • refs/tags/* - tags for all of the above branches.
  • +
  • refs/vendors/*/{heads,tags}/* - vendor-specific branches and + tags. These are owned and maintained by the respective + vendor, but made available publicly. Non-fast-forward pushes + are permitted on these branches.
  • +
  • refs/users/*/{heads,tags}/* - personal developer branches and + tags. These are owned and maintained by the individual developer. + Non-fast-forward pushes are permitted on these branches.
  • +
  • refs/dead/heads/* - completed or abandoned development + branches.
  • +
  • refs/meta - local configuration data for the commit hooks + on the server.
  • +
  • refs/deleted/*/{heads,tags}/* - old branches and tags + from the SVN repository that were deleted before the conversion to + git.
  • +
  • refs/git-svn-old/* - various branches and tags from the + git-svn pre-conversion git mirror.
  • +
  • refs/git-old/* - various branches and tags from the + git-svn pre-conversion git mirror that were local to that git + repository.
  • +
+ +

You can download any of the additional branches by adding a suitable +fetch specification to your local copy of the git repostiory. For +example, if your remote is called 'origin' (the default with git +clone) you can add the 'dead' development branches by running:

+ +
+    git config --add remote.origin.fetch "+refs/dead/heads/*:refs/remotes/origin/dead/*"
+    git config --add remote.origin.fetch "+refs/dead/tags/*:refs/tags/dead/*"
+    git fetch origin
+
+ +

which will place the dead branches in remotes/origin/dead + and the tags in tags/dead.

+ +

You can use git ls-remote to get a complete list of +refs that the server holds.

+

Active Development Branches