1 @title Diffusion User Guide: Existing Repositories
4 Quick guide for importing or observing existing repositories.
10 If you have an existing repository, you can observe or import it into
13 Observing a repository creates a read-only copy in Phabricator that is kept
14 up to date by continuously importing new changes.
16 Importing a repository creates a read-write copy.
18 This document is a quick guide to getting started. For an overview of
19 Diffusion, see @{article:Diffusion User Guide}. For a more detailed guide
20 about managing repositories and URIs in Diffusion, see
21 @{article:Diffusion User Guide: URIs}.
24 Observing Repositories
25 ======================
27 To observe an existing repository:
29 - Create a repository in Diffusion, but do not activate it yet.
30 - Add the URI for the existing repository you wish to observe in the
31 **URIs** section, in **Observe** mode.
32 - Activate the repository in Diffusion.
34 This creates a read-only copy of the repository in Phabricator. Phabricator
35 will keep its copy in sync with the remote by periodically polling the remote
38 For more details, see @{article:Diffusion User Guide: URIs}.
41 Importing Repositories
42 ======================
44 There are two primary ways to import an existing repository:
46 **Observe First**: In Git or Mercurial, you can observe the repository first.
47 Once the import completes, change the "I/O Type" on the **Observe** URI to
48 "No I/O" mode to automatically convert it into a hosted repository.
50 **Push to Empty Repository**: Create and activate an empty repository, then push
51 all of your changes to the empty repository.
53 In Git and Mercurial, you can do this with `git push` or `hg push`.
55 In Subversion, you can do this with `svnsync`.
57 For more details, see @{article:Diffusion User Guide: URIs}.
65 - reading an overview of Diffusion in
66 @{article:Diffusion User Guide}; or
67 - learning more about managing remote repository URIs in
68 @{article:Diffusion User Guide: URIs}.