R: Pull

pull {git2r} | R Documentation

## Pull

### Description

Pull

### Usage

    pull(repo, credentials = NULL, merger = default_signature(repo))

    ## S4 method for signature 'git_repository'
    pull(repo, credentials = NULL,
      merger = default_signature(repo))

### Arguments

`repo` | the repository
`credentials` | The credentials for remote repository access. Default is NULL. To use and query an ssh-agent for the ssh key credentials, let this parameter be NULL (the default).
`merger` | Who made the merge, if the merge is non-fast forward merge that creates a merge commit.

### Value

invisible(NULL)

### Examples

    ## Not run:
    ## Initialize repositories
    path_bare <- tempfile(pattern="git2r-")
    path_repo_1 <- tempfile(pattern="git2r-")
    path_repo_2 <- tempfile(pattern="git2r-")
    dir.create(path_bare)
    dir.create(path_repo_1)
    dir.create(path_repo_2)
    repo_bare <- init(path_bare, bare = TRUE)
    repo_1 <- clone(path_bare, path_repo_1)

    ## Config first user and commit a file
    config(repo_1, user.name="Alice", user.email="alice@example.org")

    ## Write to a file and commit
    writeLines("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do",
               file.path(path_repo_1, "example.txt"))
    add(repo_1, "example.txt")
    commit(repo_1, "First commit message")

    ## Push commits from first repository to bare repository
    ## Adds an upstream tracking branch to branch 'master'
    push(repo_1, "origin", "refs/heads/master")

    ## Clone to second repository
    repo_2 <- clone(path_bare, path_repo_2)
    config(repo_2, user.name="Bob", user.email="bob@example.org")

    ## Change file and commit
    writeLines(c("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do",
                 "eiusmod tempor incididunt ut labore et dolore magna aliqua."),
               file.path(path_repo_1, "example.txt"))
    add(repo_1, "example.txt")
    commit(repo_1, "Second commit message")

    ## Push commits from first repository to bare repository
    push(repo_1)

    ## Pull changes to repo_2
    pull(repo_2)

    ## Change file again and commit. This time in repository 2
    writeLines(c("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do",
                 "eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad",
                 "minim veniam, quis nostrud exercitation ullamco laboris nisi ut"),
               file.path(path_repo_2, "example.txt"))
    add(repo_2, "example.txt")
    commit(repo_2, "Third commit message")

    ## Push commits from second repository to bare repository
    push(repo_2)

    ## Pull changes to repo_1
    pull(repo_1)

    ## List commits in repositories
    commits(repo_1)
    commits(repo_2)
    commits(repo_bare)

    ## End(Not run)

[Package git2r version 0.21.0 Index]