From patchwork Wed Jan 11 20:48:24 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 9511327 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 863F06075C for ; Wed, 11 Jan 2017 20:48:38 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 76EF128643 for ; Wed, 11 Jan 2017 20:48:38 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 6B4812865F; Wed, 11 Jan 2017 20:48:38 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id D4B3A28643 for ; Wed, 11 Jan 2017 20:48:37 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8F6F06E9F9; Wed, 11 Jan 2017 20:48:35 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mail-wm0-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6B2C86E9F9 for ; Wed, 11 Jan 2017 20:48:34 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id r126so691434wmr.3 for ; Wed, 11 Jan 2017 12:48:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id; bh=an5fKnNXDvGrPggO9v1VOrkYtWL2sLqBDMA5ZDsyiww=; b=IRAGg9cRT3qOAumnUzW9C+mF3yWpoU7AoHq/tTHLZx/et5wKdZaMifgX/fs7i1zxYh g0neVb3dugESf57XMKMHvC7ztT4Elt3bMW8P9FaA5XJ2Cw49RQw76VWTjxtdm/xf+CTo zfVKcHMG2vrqA2ou9D1XnYR1FLFKVumzcas7E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=an5fKnNXDvGrPggO9v1VOrkYtWL2sLqBDMA5ZDsyiww=; b=IHpWcCv3eUJvTEaG30wSktRIu0a02PNRV1mNy2qhoPS4nRzqnE8DX2G0+IRc+rUrSs /cgSLrofQW64rn9+viXVC1JR3JDgIPSAg7rpG8Hr7a0NxoQwBPHiP9n3mBHpiC9piWZN WMgDhnJA/PU8CG/Fo9VwFYcYaMM3sxQKAvZrRBJttY1fB1QQbqYl3lYEynIXxqJkUiRf 6uX+OpBCOk51weoqCkes6GTvjWJXV2q9rw3KYXKTzZ01T4iGfbel8y34glu1l8c5mgIq xbXCkfgmr6gizzv/12ZDi31/9wNeV21WhQ6VkjQ9+gqYtnQYS/TJ20J+fYauwLM9ETCD raXQ== X-Gm-Message-State: AIkVDXKLaufZGrC9p3dOwoBnB8iKAIRm9U9LhoR4Xn2FlKN5WK69iAd6/LAfMGBEJHD6Ew== X-Received: by 10.223.164.73 with SMTP id e9mr4877854wra.71.1484167712871; Wed, 11 Jan 2017 12:48:32 -0800 (PST) Received: from phenom.ffwll.local ([2a02:168:56c9:0:decc:6e78:7e96:b452]) by smtp.gmail.com with ESMTPSA id yy7sm10213219wjc.3.2017.01.11.12.48.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 11 Jan 2017 12:48:31 -0800 (PST) From: Daniel Vetter To: Intel Graphics Development Date: Wed, 11 Jan 2017 21:48:24 +0100 Message-Id: <20170111204824.10282-1-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.11.0 Cc: Daniel Vetter , DRI Development , Daniel Vetter Subject: [Intel-gfx] [PATCH] dim: Update docs X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Virus-Scanned: ClamAV using ClamSMTP - Remove branch overview, instead link to drm-intel and drm-misc pages. - Move quickstart to the top, to make it easier to find. - Make quickstart generic, we use dim for other stuff than drm-intel now. - s/drm-intel-rerere/drm-rerere/ - Remove the section about resolving conflicts, that's now explained in detail in the process pages. v2: Also eradicate dinq (Laurent). Signed-off-by: Daniel Vetter --- dim.rst | 138 ++++++++++++++++++++++++---------------------------------------- 1 file changed, 51 insertions(+), 87 deletions(-) diff --git a/dim.rst b/dim.rst index b9cb41a2ba5b..97b375e34e90 100644 --- a/dim.rst +++ b/dim.rst @@ -23,40 +23,66 @@ DESCRIPTION drm-intel maintainer script. -Branch Model ------------- +Used to maintain drm-intel_ and drm-misc_ git repositories. -The dim flow has 3 main development branches: +.. _drm-intel: drm-intel.html +.. _drm-misc: drm-misc.html -- drm-intel-next-queued for feature work. This branch gets regularly pushed to - drm-intel-next and tagged and then sent on to the upstream drm-next branch - using *update-next*. The cut-off for the last pull request to drm-next is - around -rc5. After that point patches in drm-intel-next-queued already aim at - the next but one and not the next merge window. +QUICKSTART +========== -- drm-intel-next-fixes is to collect fixes for the current merge window after - the -rc5 feature cut-off in drm-next. +For getting started grab the latest drm (drm-intel-maintainer) script from:: -- drm-intel-fixes is for fixes for the current -rc1 kernel. This is separate - from drm-intel-next-fixes since the merge window feature cutoff at -rc5 is a - few weeks ahead of the final release of the previous kernel. + http://cgit.freedesktop.org/drm-intel/tree/dim?h=maintainer-tools - There's separate tracking branches for inclusion into linux-next to make sure - that the feature work in drm-intel-next-queued aimed for the next but one - merge window doesn't cause unecassary conflicts in linux-next - in that case - only drm-intel-next-fixes is included in linux-next. The switchover happens - when drm-intel-fixes has caught up (in git terms: drm-intel-next-fixes is - direct ancestor of drm-intel-fixes). Therefore only roll drm-intel-fixes - forward once -rc1 is released +There's also a sample config file for ~/.dimrc:: -In addition there's 2 permanent topic branches: + http://cgit.freedesktop.org/drm-intel/tree/dimrc.sample?h=maintainer-tools -- topic/drm-misc carries core drm patches aimed at the next merge window. +Plus, there's bash completion in the same directory if you feel like using that. +Run:: -- topic/drm-fixes carries core drm fixes for the current -rc kernels. + $ dim help -Additional topic branches are created as needed using *create-branch* and -*remove-branch*. +for tons of details about how this thing works. Also see the git repository +specific pages for details on the patch merging process for each tree. Adjust +your .dimrc to match your setup and then run:: + + $ dim setup + +This will also check out the latest maintainer-tools branches, so please replace +the dim you just downloaded with a symlink after this step. And by the way, if +you have improvements for dim, please submit them to intel-gfx. + +You should now have a main repository for patch application. The directory +corresponding to this repository is defined by DIM_DRM_INTEL in your .dimrc. +You should also have directories called maintainer-tools, drm-tip (for +rebuilding the tree), and drm-rerere for some dim-internal book-keeping. + +If someone else has pushed patches first resync using:: + + $ dim update-branches + +Since dim supports lots of different branches in different repositories you +first need to check out the right branch using:: + + $ dim checkout + +Applying patches is done in the main repository with:: + + $ cat patch.mbox | dim apply-branch + +This works like a glorified version of git apply-mbox and does basic patch +checking and adds stuff like patchwork links of the merged patch. It is +preferred to use the patch email file instead of the original patch file since +it contains some interesting headers like the message ID. When you're happy +(remember that with a shared tree any mistake is permanent and there's no +rebasing) push out the new tree with:: + + $ dim push-branch + +This will also rebuild a new drm-tip integration tree. For historical reasons +there's shortcut for the drm-intel specific branches for most of these commands. OPTIONS ======= @@ -375,68 +401,6 @@ DIM_TEMPLATE_SIGNATURE ---------------------- Path to a file containing a signature template for pull request mails. -QUICKSTART -========== - -For getting started grab the latest drm (drm-intel-maintainer) script from:: - - http://cgit.freedesktop.org/drm-intel/tree/dim?h=maintainer-tools - -There's also a sample config file for ~/.dimrc:: - - http://cgit.freedesktop.org/drm-intel/tree/dimrc.sample?h=maintainer-tools - -Plus, there's bash completion in the same directory if you feel like using that. -Run:: - - $ dim help - -for tons of details about how this thing works. Adjust your .dimrc to match your -setup and then run:: - - $ dim setup - -This will also check out the latest maintainer-tools branches, so please replace -the dim you just downloaded with a symlink after this step. And by the way, if -you have improvements for dim, please submit them to intel-gfx. - -You should now have a main repository for patch application. The directory -corresponding to this repository is defined by DIM_DRM_INTEL in your .dimrc. -You should also have directories called maintainer-tools, drm-tip (for -rebuilding the tree), and drm-intel-rerere for some dim-internal book-keeping. - -If someone else has pushed patches first resync using:: - - $ dim update-branches - -Applying patches to dinq is done in the main repository with:: - - $ cat patch.mbox | dim apply-queued - -This works like a glorified version of git apply-mbox and does basic patch -checking and adds stuff like patchwork links of the merged patch. It is -preferred to use the patch email file instead of the original patch file since -it contains some interesting headers like the message ID. When you're happy -(remember that with a shared tree any mistake is permanent and there's no -rebasing) push out the new tree with:: - - $ dim push-queued - -This will also rebuild a new drm-tip integration tree. If that fails, ask -maintainers for help with resolving conflicts. One thing to note here is that -the script syncs saved git rerere conflict resolutions around. One does the -resolution, everyone has it. The drawback is, someone screws up the conflict -resolution, everyone has it... - -Note that every two weeks Daniel cuts a new drm-intel-next by tagging what's in -drm-intel-next-queued. To increase the chances that the tree isn't totally -broken, only push bug fixes for serious problems on Thu/Fri (and weekend) every -second week (at the moment the release cycle is aligned with odd work weeks, but -just check out when the last tagged happened). - -If you need to push something to drm-intel-fixes or -drm-intel-next-fixes, please quickly coordinate with Jani. - CONTRIBUTING ============