一旦 BitBucket 上已有代码,如何连接 BitBucket 存储库和现有的本地 git 项目
How to connect BitBucket repository and existing local git project once there is already code on BitBucket
请注意:虽然我在这里提到了 BitBucket,但我认为这是一个 git
核心问题,任何有经验的 git 用户都可以回答.我只提到 BitBucket 以便人们知道我 不 使用 GitHub 因此, 不能 解决问题GitHub-特定的解决方案。但同样,我认为 git 命令行的答案是 100%。
此外,如果在基于 BitBucket UI 的解决方案或纯 git 命令行解决方案之间给出偏好,我当然更喜欢后者!
我遇到了一个本末倒置的场景。
我被要求创建一个新项目并为其编写一些代码,因为当时与我一起工作的人还没有准备好在他们的 BitBucket 工作区中创建一个新的存储库。因此,我在本地创建了一个 POC,将我的项目命名为 some-service
,现在我准备将该项目推送到一个新的 BitBucket 存储库,以便与其他开发人员共享。我想要一个主分支和一个开发分支(或者这些天 git/BitBucket 的标准)。
问题是,他们不愿意给我“创建新存储库”权限,所以他们坚持要他们创建存储库并简单地给我read/write 访问它。因此,在 BitBucket 上,他们创建了一个名为 some-service
的新存储库,其中包含一个 README.md
和一个 .gitignore
,并且它有一个唯一的 master
分支。
通常在 GitHub,我自己创建回购协议,他们有一个 main
分支,并且 GitHub 为我提供了一些命令行 connect/sync我现有的本地仓库和 GitHub.
上的新仓库
我可以在这里做什么,最好只从 git 命令行,这样:
- 我可以克隆这个 repo,或者
git init
我的本地 some-service
项目,然后“连接它们”,这样我就可以 git push
在命令行上推送它们更改 BitBucket 上远程项目中的分支;和
- 我可以将本地副本中的代码设置为
main
分支并将其推送到 BitBucket;和
- 在 BitBucket 中创建一个
develop
分支并将该分支下拉,这样在本地和 BitBucket 上,我都有 main
和 develop
?
在此先感谢您提供的所有帮助!
您可以为本地存储库添加远程。
具体
# Add bit bucket repository as remote
git remote add origin <link to bit bucket repository>
# Fetch remote changes (Readme etc)
git fetch origin
# Rebase local commit on top of remote
git rebase origin/master
# Push main branch to origin
git push -u origin main
# GUI interface necessary at this point for BitBucket.
# Navigate to the repository, then enter "Repository settings" (appears on
# the left list menu), enter "ADVANCED", under "Main branch" select
# "main". Finally, click "Save changes".
# Delete master branch on remote
git push origin --delete master
# Create the develop branch, assuming it doesn't exist
git checkout -b "develop"
# Push develop branch to origin
git push -u origin develop
请注意:虽然我在这里提到了 BitBucket,但我认为这是一个 git
核心问题,任何有经验的 git 用户都可以回答.我只提到 BitBucket 以便人们知道我 不 使用 GitHub 因此, 不能 解决问题GitHub-特定的解决方案。但同样,我认为 git 命令行的答案是 100%。
此外,如果在基于 BitBucket UI 的解决方案或纯 git 命令行解决方案之间给出偏好,我当然更喜欢后者!
我遇到了一个本末倒置的场景。
我被要求创建一个新项目并为其编写一些代码,因为当时与我一起工作的人还没有准备好在他们的 BitBucket 工作区中创建一个新的存储库。因此,我在本地创建了一个 POC,将我的项目命名为 some-service
,现在我准备将该项目推送到一个新的 BitBucket 存储库,以便与其他开发人员共享。我想要一个主分支和一个开发分支(或者这些天 git/BitBucket 的标准)。
问题是,他们不愿意给我“创建新存储库”权限,所以他们坚持要他们创建存储库并简单地给我read/write 访问它。因此,在 BitBucket 上,他们创建了一个名为 some-service
的新存储库,其中包含一个 README.md
和一个 .gitignore
,并且它有一个唯一的 master
分支。
通常在 GitHub,我自己创建回购协议,他们有一个 main
分支,并且 GitHub 为我提供了一些命令行 connect/sync我现有的本地仓库和 GitHub.
我可以在这里做什么,最好只从 git 命令行,这样:
- 我可以克隆这个 repo,或者
git init
我的本地some-service
项目,然后“连接它们”,这样我就可以git push
在命令行上推送它们更改 BitBucket 上远程项目中的分支;和 - 我可以将本地副本中的代码设置为
main
分支并将其推送到 BitBucket;和 - 在 BitBucket 中创建一个
develop
分支并将该分支下拉,这样在本地和 BitBucket 上,我都有main
和develop
?
在此先感谢您提供的所有帮助!
您可以为本地存储库添加远程。
具体
# Add bit bucket repository as remote
git remote add origin <link to bit bucket repository>
# Fetch remote changes (Readme etc)
git fetch origin
# Rebase local commit on top of remote
git rebase origin/master
# Push main branch to origin
git push -u origin main
# GUI interface necessary at this point for BitBucket.
# Navigate to the repository, then enter "Repository settings" (appears on
# the left list menu), enter "ADVANCED", under "Main branch" select
# "main". Finally, click "Save changes".
# Delete master branch on remote
git push origin --delete master
# Create the develop branch, assuming it doesn't exist
git checkout -b "develop"
# Push develop branch to origin
git push -u origin develop