Index: devel/Makefile =================================================================== --- devel/Makefile +++ devel/Makefile @@ -827,6 +827,7 @@ SUBDIR += gindent SUBDIR += gio-sharp SUBDIR += git + SUBDIR += git-arc SUBDIR += git-absorb SUBDIR += git-bug SUBDIR += git-cinnabar Index: devel/git-arc/Makefile =================================================================== --- /dev/null +++ devel/git-arc/Makefile @@ -0,0 +1,48 @@ +PORTNAME= git-arc +PORTVERSION= 20211126 +CATEGORIES= devel +MASTER_SITES= https://cgit.freebsd.org/src/plain/tools/tools/git/ +.if ${FLAVOR:U} != default +PKGNAMESUFFIX= -${FLAVOR} +.endif +DISTFILES= ${PORTNAME}.sh?id=${_REV} \ + ${PORTNAME}.1?id=${_REV} +DIST_SUBDIR= ${PKGNAMEPREFIX}${PORTNAME} + +MAINTAINER= jrm@FreeBSD.org +COMMENT= FreeBSD Phabricator reviews based on git commits + +LICENSE= BSD2CLAUSE + +RUN_DEPENDS= arc:devel/arcanist \ + git:devel/git@${FLAVOR} \ + jq:textproc/jq + +# Git flavor to depend on +FLAVORS= default lite tiny + +default_CONFLICTS_INSTALL= git-arc-lite git-arc-tiny +lite_CONFLICTS_INSTALL= git-arc git-arc-tiny +tiny_CONFLICTS_INSTALL= git-arc git-arc-lite + +EXTRACT_CMD= ${CP} +EXTRACT_BEFORE_ARGS= # empty +EXTRACT_AFTER_ARGS= . +NO_ARCH= yes +NO_BUILD= yes + +NO_WRKSUBDIR= yes +PLIST_FILES= bin/${PORTNAME} \ + man/man1/${PORTNAME}.1.gz + +_REV= 964035c409b1b7229c7bc0220e7455e4a038ed4b + +post-patch: + @${MV} ${WRKSRC}/${PORTNAME}.sh?id=* ${WRKSRC}/${PORTNAME}.sh + @${MV} ${WRKSRC}/${PORTNAME}.1?id=* ${WRKSRC}/${PORTNAME}.1 + +do-install: + ${INSTALL_SCRIPT} ${WRKSRC}/${PORTNAME}.sh ${STAGEDIR}${PREFIX}/bin/${PORTNAME} + ${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/ + +.include Index: devel/git-arc/distinfo =================================================================== --- /dev/null +++ devel/git-arc/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1637946965 +SHA256 (git-arc/git-arc.sh?id=964035c409b1b7229c7bc0220e7455e4a038ed4b) = 3b2f8e0a519b30063bcfee8c191e9c151ceb5422d1e4d2aa07dce43e7a290e8b +SIZE (git-arc/git-arc.sh?id=964035c409b1b7229c7bc0220e7455e4a038ed4b) = 16149 +SHA256 (git-arc/git-arc.1?id=964035c409b1b7229c7bc0220e7455e4a038ed4b) = ff882a81081cbe12b90a8008d9be9cf6d8175e583c319240a6c76b8e17361dc0 +SIZE (git-arc/git-arc.1?id=964035c409b1b7229c7bc0220e7455e4a038ed4b) = 6609 Index: devel/git-arc/pkg-descr =================================================================== --- /dev/null +++ devel/git-arc/pkg-descr @@ -0,0 +1,15 @@ +The git-arc utility creates and manages FreeBSD Phabricator reviews +based on git commits. It is a git plugin that provides a wrapper around +arc. + +The arc command has a few limitations that make it awkward for FreeBSD +development: + +- Arcanist uses its own commit log template with a format does not match + FreeBSD's template. + +- Arcanist presumes a model where all the commits in a development + branch are uploaded for review as a single Differential revision. + When working on a feature branch with multiple commits, it is usually + more efficient to review each commit individually. git-arc mostly + mitigates those limitations.