[gnome-continuous-yocto/gnomeostree-3.28-rocko: 6402/8267] dev-manual: Created "Working With Git Repositories" section
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 6402/8267] dev-manual: Created "Working With Git Repositories" section
- Date: Sun, 17 Dec 2017 04:47:40 +0000 (UTC)
commit 98ba0cd4769cb6213ca71dca1d874b673fb7844f
Author: Scott Rifenbark <srifenbark gmail com>
Date: Thu Jun 15 14:14:21 2017 -0700
dev-manual: Created "Working With Git Repositories" section
Fixes [YOCTO #11630]
This new section has three new procedures for now: 1)
cloning the poky repository, 2) checking out a branch
based on an upstream repository branch name, and 3)
checking out a branch based on an upstream tag name.
More to be added for other key repositories.
(From yocto-docs rev: 4cbcd952ba395b19be5374470a95630a4bc6ffa7)
Signed-off-by: Scott Rifenbark <srifenbark gmail com>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
documentation/dev-manual/dev-manual-start.xml | 204 +++++++++++++++++++++++++
1 files changed, 204 insertions(+), 0 deletions(-)
---
diff --git a/documentation/dev-manual/dev-manual-start.xml b/documentation/dev-manual/dev-manual-start.xml
index df622f9..11b536a 100644
--- a/documentation/dev-manual/dev-manual-start.xml
+++ b/documentation/dev-manual/dev-manual-start.xml
@@ -286,6 +286,210 @@
</para>
</section>
+<section id='working-with-git-repositories'>
+ <title>Working With Git Repositories</title>
+
+ <para>
+ This section contains procedures for establishing Git repositories
+ local to your development system.
+ You use these local repositories to work on projects.
+ <note>
+ For concepts and introductory information about Git as it is used
+ in the Yocto Project, see the
+ "<ulink url='&YOCTO_DOCS_REF_URL;#git'>Git</ulink>"
+ section in the Yocto Project Reference Manual.
+ </note>
+ </para>
+
+ <section id='cloning-the-poky-repository'>
+ <title>Cloning the <filename>poky</filename> Repository</title>
+
+ <para>
+ Follow these steps to create a local version of the
+ upstream
+ <ulink url='&YOCTO_DOCS_REF_URL;#poky'><filename>poky</filename></ulink>
+ Git repository.
+ <orderedlist>
+ <listitem><para>
+ <emphasis>Set Your Directory:</emphasis>
+ Be in the directory where you want to create your local
+ copy of poky.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Clone the Repository:</emphasis>
+ The following command clones the repository and uses
+ the default name "poky" for your local repository:
+ <literallayout class='monospaced'>
+ $ git clone git://git.yoctoproject.org/poky
+ Cloning into 'poky'...
+ remote: Counting objects: 367178, done.
+ remote: Compressing objects: 100% (88161/88161), done.
+ remote: Total 367178 (delta 272761), reused 366942 (delta 272525)
+ Receiving objects: 100% (367178/367178), 133.26 MiB | 6.40 MiB/s, done.
+ Resolving deltas: 100% (272761/272761), done.
+ Checking connectivity... done.
+ </literallayout>
+ Once the repository is created, you can change to that
+ directory and check its status and list its branches:
+ <literallayout class='monospaced'>
+ $ cd ~/poky
+ $ git status
+ On branch master
+ Your branch is up-to-date with 'origin/master'.
+ nothing to commit, working directory clean
+ $ git branch
+ * master
+ </literallayout>
+ Your local repository of poky is identical to the
+ upstream poky repository at the time from which it was
+ cloned.
+ By default, Git creates the "master" branch and checks
+ it out.
+ </para></listitem>
+ </orderedlist>
+ </para>
+ </section>
+
+ <section id='checking-out-by-branch-in-poky'>
+ <title>Checking Out by Branch in Poky</title>
+
+ <para>
+ When you clone the upstream poky repository, you have access to
+ all its development branches.
+ Each development branch in a repository is unique as it forks
+ off the repositories "master" branch.
+ To see and use the files of any branch locally, you need to
+ know the branch name and then checkout the branch.
+ <orderedlist>
+ <listitem><para>
+ <emphasis>Switch to the Poky Directory:</emphasis>
+ If you have a local poky Git repository, switch to that
+ directory.
+ If you do not have the local copy of poky, see the
+ "<link linkend='cloning-the-poky-repository'>Cloning the <filename>poky</filename>
Repository</link>"
+ section.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Determine Existing Branch Names:</emphasis>
+ <literallayout class='monospaced'>
+ $ git branch -a
+ * master
+ remotes/origin/1.1_M1
+ remotes/origin/1.1_M2
+ remotes/origin/1.1_M3
+ remotes/origin/1.1_M4
+ remotes/origin/1.2_M1
+ remotes/origin/1.2_M2
+ remotes/origin/1.2_M3
+ .
+ .
+ .
+ remotes/origin/master-next
+ remotes/origin/master-next2
+ remotes/origin/morty
+ remotes/origin/pinky
+ remotes/origin/purple
+ remotes/origin/pyro
+ </literallayout>
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Checkout the Branch:</emphasis>
+ Checkout the branch in which you want to work.
+ For example, to access the files for the Yocto Project
+ 2.3 Release (Pyro), use the following command:
+ <literallayout class='monospaced'>
+ $ git checkout -b origin/pyro
+ Switched to a new branch 'origin/pyro'
+ </literallayout>
+ The previous command checks out the "pyro" branch and
+ reports that the branch is tracking the upstream
+ "origin/pyro" branch.</para>
+
+ <para>The following command displays the branches
+ that are now part of your local poky repository.
+ The asterisk character indicates the branch that is
+ currently checked out for work:
+ <literallayout class='monospaced'>
+ $ git branch
+ master
+ * origin/pyro
+ </literallayout>
+ </para></listitem>
+ </orderedlist>
+ </para>
+ </section>
+
+ <section id='checkout-out-by-tag-in-poky'>
+ <title>Checking Out by Tag in Poky</title>
+
+ <para>
+ Similar to branches, the upstream repository has tags used
+ to mark significant commits such as a completed release or
+ stage of a release.
+ You might want to set up a local branch based on one of those
+ points in the repository.
+ The process is similar to checking out by branch name except you
+ use tag names.
+ <orderedlist>
+ <listitem><para>
+ <emphasis>Switch to the Poky Directory:</emphasis>
+ If you have a local poky Git repository, switch to that
+ directory.
+ If you do not have the local copy of poky, see the
+ "<link linkend='cloning-the-poky-repository'>Cloning the <filename>poky</filename>
Repository</link>"
+ section.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Fetch the Tag Names:</emphasis>
+ To checkout the branch based on a tag name, you need to
+ fetch the upstream tags into your local repository:
+ <literallayout class='monospaced'>
+ $ git fetch --tags
+ $
+ </literallayout>
+ </para></listitem>
+ <listitem><para>
+ <emphasis>List the Tag Names:</emphasis>
+ You can list the tag names now:
+ <literallayout class='monospaced'>
+ $ git tag
+ 1.1_M1.final
+ 1.1_M1.rc1
+ 1.1_M1.rc2
+ 1.1_M2.final
+ 1.1_M2.rc1
+ .
+ .
+ .
+ yocto-2.2
+ yocto-2.2.1
+ yocto-2.3
+ yocto_1.5_M5.rc8
+ </literallayout>
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Checkout the Branch:</emphasis>
+ <literallayout class='monospaced'>
+ $ git checkout tags/2.2_M2 -b my_yocto_2.2_M2
+ Switched to a new branch 'my_yocto_2.2_M2'
+ $ git branch
+ master
+ * my_yocto_2.2_M2
+ </literallayout>
+ The previous command creates and checks out a local
+ branch named "my_yocto_2.2_M2", which is based on
+ the commit in the upstream poky repository that has
+ the same tag.
+ The files you have available locally when you are
+ checked out to that branch are a snapshot of the
+ "morty" development branch at the point where
+ milestone two was reached.
+ </para></listitem>
+ </orderedlist>
+ </para>
+ </section>
+</section>
+
<section id='building-images'>
<title>Building Images</title>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]