how_to_use_google_repo

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
how_to_use_google_repo [2020/04/14 15:34] rpjdayhow_to_use_google_repo [2020/04/21 11:07] (current) – [Commands] rpjday
Line 7: Line 7:
   * [[https://www.automotivelinux.org/|AGL home page]]   * [[https://www.automotivelinux.org/|AGL home page]]
     * [[https://wiki.automotivelinux.org/start|AGL wiki]]     * [[https://wiki.automotivelinux.org/start|AGL wiki]]
 +
 +===== TO DO =====
 +
 +  * Discuss cloning just manifest repo.
 +
 +===== Commands =====
 +
 +==== repo help ====
 +
 +<code>
 +  abandon        Permanently abandon a development branch
 +  branch         View current topic branches
 +  branches       View current topic branches
 +  checkout       Checkout a branch for development
 +  cherry-pick    Cherry-pick a change.
 +  diff           Show changes between commit and working tree
 +  diffmanifests  Manifest diff utility
 +  download       Download and checkout a change
 +  gitc-delete    Delete a GITC Client.
 +  gitc-init      Initialize a GITC Client.
 +  grep           Print lines matching a pattern
 +  info           Get info on the manifest branch, current branch or unmerged branches
 +  init           Initialize repo in the current directory
 +  list           List projects and their associated directories
 +  overview       Display overview of unmerged project branches
 +  prune          Prune (delete) already merged topics
 +  rebase         Rebase local branches on upstream branch
 +  smartsync      Update working tree to the latest known good revision
 +  stage          Stage file(s) for commit
 +  start          Start a new branch for development
 +  status         Show the working tree status
 +  sync           Update working tree to the latest revision
 +  upload         Upload changes for code review
 +</code>
 +
  
  
Line 15: Line 50:
 The first kind of ''repo'' is not the full command; rather, it is a simplified version called the //tool launcher//; this is the single-executable command you download initially, and make sure is part of your search path so that when you invoke ''repo'', that is the command that is located and executed. It's common to install that in your personal ''~/bin'' directory, which is almost always already part of your search path. The first kind of ''repo'' is not the full command; rather, it is a simplified version called the //tool launcher//; this is the single-executable command you download initially, and make sure is part of your search path so that when you invoke ''repo'', that is the command that is located and executed. It's common to install that in your personal ''~/bin'' directory, which is almost always already part of your search path.
  
-Once you start working with ''repo'' and initialize your first repository, each and every repository will, as part of being initialized, have installed within it the //full// version of ''repo'', which supports all of the subcommands. However, even as you're working with ''repo'', you always, always, always invoke the initial tool launcher which, as soon as it realizes it's being run in the context of an actual repository, will hand off control to that repo's full version.+Once you start working with ''repo'' and start initializing repositories, each and every repository will, as part of being initialized, have installed within it the //full// version of ''repo'', which supports all of the subcommands. However, even as you're working with ''repo'', you always, always, always invoke the initial tool launcher which, as soon as it realizes it's being run in the context of an actual repository, will hand off control to that repo's full version.
  
 In other words, even though every single ''repo'' repository you initialize gets its own copy of the full version of the command, you should never run that full version directly -- you always invoke the simpler, tool launcher version, which will take it from there. In other words, even though every single ''repo'' repository you initialize gets its own copy of the full version of the command, you should never run that full version directly -- you always invoke the simpler, tool launcher version, which will take it from there.
Line 21: Line 56:
 ===== Installing "repo" launcher tool ===== ===== Installing "repo" launcher tool =====
  
-Install the ''repo'' launcher tool in your personal ''~/bin'' directory:+As explained above, install the launcher tool version of ''repo'' in any directory that is on your search path, such as:
  
 <code> <code>
Line 28: Line 63:
 </code> </code>
  
-Note well that this is not the ''repo'' command itself; ratherit is the //launcher tool// that will, every time you initialize a new repo directory, copy the //actual// ''repo'' command into that new directory. +Once again, this is not the full version of the command; its job is to simply initialize new repositories when you run ''repo init'', then in each of those repositories install the //full// version of the command, which will be used from then on.
- +
-Do not confuse these two things; that is a common misunderstanding.+
  
 ===== Initializing a repo repository ===== ===== Initializing a repo repository =====
Line 37: Line 70:
  
 <code> <code>
-$ mkdir repo_dir +$ mkdir agl_dir 
-$ cd repo_dir+$ cd agl_dir
 </code> </code>
  
  • how_to_use_google_repo.1586878466.txt.gz
  • Last modified: 2020/04/14 15:34
  • by rpjday