public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: Jani Nikula <jani.nikula@intel.com>,
	Daniel Vetter <daniel.vetter@ffwll.ch>,
	Rodrigo Vivi <rodrigo.vivi@intel.com>
Subject: [maintainer-tools PATCH] dim: Add helpers to move fixes branches up.
Date: Mon,  2 Oct 2017 11:32:36 -0700	[thread overview]
Message-ID: <20171002183236.27322-1-rodrigo.vivi@intel.com> (raw)

One of main doubts I had when starting maintaining the
fixes branches was when to move them, but also how, to-where,
and when avoid moving and stay on the current one.

So this scripts aims to avoid doubts and mistakes on fixes
maintainance besides making all bases more clear and
standardized.

Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
 dim     | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 dim.rst | 13 +++++++++++++
 2 files changed, 63 insertions(+)

diff --git a/dim b/dim
index fc16d114632f..8643bafcd2a5 100755
--- a/dim
+++ b/dim
@@ -918,6 +918,56 @@ function dim_apply_pull
 	return $rv
 }
 
+function rebase_branch
+{
+	local branch newbase
+
+	branch=${1:?$usage}
+	shift
+	newbase=${1:?$usage}
+	shift
+
+	assert_branch $branch
+	assert_repo_clean
+
+	$DRY git rebase $newbase "$@"
+}
+
+dim_alias_rf=rebase-fixes
+function dim_rebase_fixes
+{
+	local tag commit
+
+	commit=$(git rev-list --tags --max-count=1 --remotes=$DIM_DRM_INTEL)
+	tag=$(git describe --tags $commit)
+
+	if [[ $tag != *"-rc"* ]]; then
+		echoerr "Tag $tag is not an -rc one."
+		return 1;
+	fi
+
+	rebase_branch drm-intel-fixes $tag "$@"
+
+	if [ $DRY ]; then
+		return 0;
+	fi
+
+	if [ $(git rev-parse HEAD) != $commit ]; then
+		git reset --hard $DIM_DRM_INTEL_REMOTE/drm-intel-fixes
+		echoerr "ERROR: fixes didn't fully propagated yet, aborting"
+	fi
+}
+
+dim_alias_rnf=rebase-next-fixes
+function dim_rebase_next_fixes
+{
+	local dim_drm_upstream_remote
+
+	dim_drm_upstream_remote=$(url_to_remote $drm_upstream_git)
+
+	rebase_branch drm-intel-next-fixes $dim_drm_upstream_remote/drm-next "$@"
+}
+
 function dim_backmerge
 {
 	local branch upstream patch_file
diff --git a/dim.rst b/dim.rst
index 65e652e8bc75..a53ef8aa67e2 100644
--- a/dim.rst
+++ b/dim.rst
@@ -376,6 +376,19 @@ apply-pull *branch*
 -------------------
 Reads a pull request mail from stdin and merges it into the given *branch*.
 
+rebase-fixes
+------------
+Rebases drm-intel-fixes to latest Linus tag.
+This command is to be used following a Linus "-rc" tag, in order to move
+drm-intel-fixes branch up.
+It fails if tag is not an -rc tag.
+It fails if your current fixes didn't fully propagated yet.
+
+rebase-fixes-next
+-----------------
+Rebases drm-intel-next queued into drm-next.
+This command is to be used after drm-next is closed for new features.
+
 backmerge *branch* *upstream*
 -----------------------------
 
-- 
2.13.5

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

             reply	other threads:[~2017-10-02 18:32 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-02 18:32 Rodrigo Vivi [this message]
2017-10-03  8:25 ` [maintainer-tools PATCH] dim: Add helpers to move fixes branches up Daniel Vetter
2017-10-03 10:30   ` Jani Nikula

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171002183236.27322-1-rodrigo.vivi@intel.com \
    --to=rodrigo.vivi@intel.com \
    --cc=daniel.vetter@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox