设置 BitBucket,这样你就可以在你的服务器上使用它的 pull

Setting up BitBucket so you can use pull from it on your server

我已经设置了一个存储库并让它在本地工作,所以我可以 push/pull 来自 BitBucket;现在我正在尝试让它工作,以便我可以从我的主机服务器上执行 git pull

我已经设置了一个 SSH 密钥,这一切都很好,但是当我这样做时:

cat .git/config

我得到的是:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true

虽然我在本地环境中的 config 文件包含:

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
    hideDotFiles = dotGitOnly
[remote "origin"]
    url = git@bitbucket.org:git-username/my-repo.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master
[gui]
    wmstate = normal
    geometry = 887x427+25+25 171 192

所以不确定为什么它们如此不同?我假设我需要添加一个远程源,但是我不确定如何去做?我假设您遵循与通过 BitBucket 设置存储库时相同的说明,但我不确定是否仅此而已? ....并且一旦创建回购协议似乎就无法再次找到该信息。

如果你想从你的服务器中提取你的 repo,你需要放置一个 DEPLOYMENT KEY,你可以在你的 repo > setting > depolyments keys 中获取它。

然后从您的服务器获取 rsa 密钥并将其放在那里。

SSH密钥是用来连接你的电脑和你的服务器或者bitbucket的,但不是在你的服务器和bitbucket之间,记住这一点。

如果您需要其他东西,请直接询问 :)

好的,以下是您需要执行的操作,才能从您的 bitbucket 存储库中提取服务器:

  1. 建议您根据 Lester Vargas 的 回答添加 部署密钥
  2. 从命令行 运行 git remote add origin git@bitbucket.org:bb-username/repo-name.git

现在,要获取 [branch "master"] 部分,以便它自动从 master 分支中提取回购协议,您可以在命令行上执行以下操作:

  1. git config branch.master.remote origin
  2. git config branch.master.merge refs/heads/master

应该可以!