How To Clone a Timesys Git Repository

Overview

Timesys provides access to its Git repository using the HTTPS protocol. This requires a few additional setup steps, which will only need to be performed once per machine.

For more detailed instructions for using git, please see the document HOWTO Use git.

Prerequisites

  • Host packages
    • Curl
    • git-core

Procedure

  1. Install curl
    • On Ubuntu and Debian:
      $ sudo apt-get install curl git-core
    • On Fedora:
      $ yum install curl git-core
  2. Create the file /home/<user>/.netrc. This contains authentication information for accessing the repository. Use your LinuxLink credentials to access it. You must use your LinuxLink Username for the 'login' value, which can be found on your User Profile page. Your email address will not work for this login.
    machine git.timesys.com
    login <LinuxLink Username>
    password <LinuxLink Password>
    
  3. You may now clone Timesys Git trees using the git-clone command.
    $ git clone https://git.timesys.com/<repository name> <local directory>

Examples

  • Clone the AT91 tree and put it in the directory ./linux-2.6-at91.
    $ git clone https://git.timesys.com/linux-2.6-at91.git
  • Clone the AT91 tree and put it in the directory ./linux-2.6-at91.
    $ git clone https://git.timesys.com/linux-2.6-at91.git linux-2.6-at91
  • Clone the i.MX tree and put it in the directory ./linux.
    $ git clone https://git.timesys.com/linux-2.6-mx.git linux

FAQ

Cloning seems to hang. What's going on?

In a published tree, Git stores the version information inside of very large archive files called packs. When cloning over HTTP, the entire pack is transmitted to your host before any processing is done. There is no visual clue that the pack is downloading- the screen seems to hang. Just wait a little while- it will eventually start back up.

Why do I see error messages such as error: File ddb6cc0... (...) corrupt when I clone the repository?

As long as your clone finishes successfully, these errors are completely harmless. They are a side effect of how Git stores published repositories. Essentially, the Git client is requesting a file that doesn't exist, but has to be generated from an archive file on the server. When the client receives this error, it then knows to pull from the archive, or pack, which is typically reflected in the next few messages. You may receive occasional HTTP 500 errors as well, which are essentially caused by the same issue.

If the clone fails, please contact LinuxLink Support