From owner-dev-commits-doc-all@freebsd.org Fri Apr 9 20:18:00 2021 Return-Path: Delivered-To: dev-commits-doc-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 61EAE5DB8E7 for ; Fri, 9 Apr 2021 20:18:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4FH8Zc1P3Zz4Xk2; Fri, 9 Apr 2021 20:18:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 126AE24349; Fri, 9 Apr 2021 20:18:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 139KHxsD031692; Fri, 9 Apr 2021 20:17:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 139KHxj6031691; Fri, 9 Apr 2021 20:17:59 GMT (envelope-from git) Date: Fri, 9 Apr 2021 20:17:59 GMT Message-Id: <202104092017.139KHxj6031691@gitrepo.freebsd.org> To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org From: "George V. Neville-Neil" Subject: git: a0fbda3eef - main - Rough draft on collaboration using github MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gnn X-Git-Repository: doc X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a0fbda3eef0f5d647a3eb3724704c13238068d7b Auto-Submitted: auto-generated X-BeenThere: dev-commits-doc-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the doc repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Apr 2021 20:18:00 -0000 The branch main has been updated by gnn (src committer): URL: https://cgit.FreeBSD.org/doc/commit/?id=a0fbda3eef0f5d647a3eb3724704c13238068d7b commit a0fbda3eef0f5d647a3eb3724704c13238068d7b Author: George V. Neville-Neil AuthorDate: 2021-04-09 20:16:53 +0000 Commit: George V. Neville-Neil CommitDate: 2021-04-09 20:17:49 +0000 Rough draft on collaboration using github --- documentation/content/en/articles/committers-guide/_index.adoc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/documentation/content/en/articles/committers-guide/_index.adoc b/documentation/content/en/articles/committers-guide/_index.adoc index 5effac883f..11af4b0088 100644 --- a/documentation/content/en/articles/committers-guide/_index.adoc +++ b/documentation/content/en/articles/committers-guide/_index.adoc @@ -2021,7 +2021,8 @@ git log refs/freebsd/vendor/zlib/1.2.10 .... would look at the log for the vendor branch for zlib starting at 1.2.10. -=== Collaborating with Others + +=== Collaborating with others One of the keys to good software development on a project as large as FreeBSD is the ability to collaborate with others before you push your changes to the tree. The FreeBSD project's git repositories do not, yet, allow user created branches to be pushed to the repository, and therefore if you wish to share your changes with others you must use another mechanism, such as a hosted GitLab or GitHub, in order to share changes in a user generated branch. @@ -2041,6 +2042,7 @@ The first step is to create a fork of https://github.com/freebsd/freebsd-src[Fre The destination of the fork should be your own, personal, GitHub account (gvnn3 in my case). Now add a remote on your local system that points to your fork: +[source,shell] .... % git remote add github git@github.com:gvnn3/freebsd-src.git % git remote -v @@ -2051,6 +2053,7 @@ freebsd ssh://git@gitrepo.freebsd.org/src.git (push) .... With this in place you can create a <> +[source,shell] .... % git checkout -b gnn-github .... @@ -2058,6 +2061,7 @@ With this in place you can create a <> Make whatever modifications you wish in your branch. Build, test, and once you're ready to collaborate with others it's time to push your changes into your hosted branch. Before you can push you'll have to set the appropriate upstream, as git will tell you the first time you try to push to your +github+ remote: +[source,shell] .... % git push github fatal: The current branch gnn-github has no upstream branch. @@ -2068,6 +2072,7 @@ To push the current branch and set the remote as upstream, use Setting the push as +git+ advises allows it to succeed: +[source,shell] .... % git push --set-upstream github gnn-feature Enumerating objects: 20486, done. @@ -2088,6 +2093,7 @@ Branch 'gnn-feature' set up to track remote branch 'gnn-feature' from 'github'. Subsequent changes to the same branch will push correctly by default: +[source,shell] .... % git push Enumerating objects: 4, done.