Azure devops 使用VisualStudioTeamServices项目的本地GIT存储库

Azure devops 使用VisualStudioTeamServices项目的本地GIT存储库,azure-devops,Azure Devops,我们已经在本地安装了GIT。我们有我们的代码存储库。 是否可以将存储库从此内部部署实例连接到Visual studio team services项目 所以它们显示在“代码”栏下 我需要它托管在本地,但请参见VSTS项目中的代码更改/提交和其他GIT内容否,不支持在代码栏下显示其他存储库的文件或代码。您需要将该存储库导入VSTS中的存储库。之后,如果本地git存储库中有更改,您可以将更新推送到VSTS存储库。 否,不支持在代码栏下显示其他存储库的文件或代码。您需要将该存储库导入VSTS中的存储

我们已经在本地安装了GIT。我们有我们的代码存储库。 是否可以将存储库从此内部部署实例连接到Visual studio team services项目

所以它们显示在“代码”栏下


我需要它托管在本地,但请参见VSTS项目中的代码更改/提交和其他GIT内容

否,不支持在代码栏下显示其他存储库的文件或代码。您需要将该存储库导入VSTS中的存储库。之后,如果本地git存储库中有更改,您可以将更新推送到VSTS存储库。

否,不支持在代码栏下显示其他存储库的文件或代码。您需要将该存储库导入VSTS中的存储库。之后,如果本地git存储库中有更改,您可以将更新推送到VSTS存储库。
您无法将本地GIT连接到VST。但是,您可以使用VSTSRESTAPI将代码从本地GIT推送到VST。
通常,您将在本地GIT repo上设置一个钩子/触发器,以便自动化复制过程。

您无法将本地GIT连接到VST。但是,您可以使用VSTSRESTAPI将代码从本地GIT推送到VST。
通常,您将在本地GIT repo上设置一个钩子/触发器,以便自动化复制过程。

正如其他人所说,您可以拥有一个“GIT钩子”,它基本上是一个GIT触发器,用于对某些事件采取行动。在本例中,当代码被推送到VST时,我假设您需要了解技术命令

我不得不以相反的方式来做,我做得又快又脏。这将一次推送所有内容,而不是每次提交。这也可以赶上落后的回购协议

# Clone source repo (your local git repo)
git clone some_repo_path_goes_here
# I am skipping steps and assuming you are only syncing master branch.
# I have code to get all branches down before proceeding, but not posting it here.
# Assuming tags are on master branch..
# Get all tags
git fetch origin --tags

# Test to see if remote alias already exists
git ls-remote http://path_to_.visualstudio.com/org/project/_git/TargetRepoSameName
# Add a remote alias
git remote add any_name_123 http://path_to_.visualstudio.com/org/project/_git/TargetRepoSameName

# push local repo to 'any_name_123'
git push any_name_123 --all
# optional: delete all tags before attempting to push local tags
git push any_name_123 --delete `$(git tag -l)
# push local tags to remote repo 
git push any_name_123 --tags

如果你愿意,你可以安排这项工作。我有一个PowerShell的工作来完成这项工作,有很多功能来完成分支的下拉。

正如其他人所说,您可以有一个“git钩子”,它基本上是一个git触发器,用于对某些事件采取行动。在本例中,当代码被推送到VST时,我假设您需要了解技术命令

我不得不以相反的方式来做,我做得又快又脏。这将一次推送所有内容,而不是每次提交。这也可以赶上落后的回购协议

# Clone source repo (your local git repo)
git clone some_repo_path_goes_here
# I am skipping steps and assuming you are only syncing master branch.
# I have code to get all branches down before proceeding, but not posting it here.
# Assuming tags are on master branch..
# Get all tags
git fetch origin --tags

# Test to see if remote alias already exists
git ls-remote http://path_to_.visualstudio.com/org/project/_git/TargetRepoSameName
# Add a remote alias
git remote add any_name_123 http://path_to_.visualstudio.com/org/project/_git/TargetRepoSameName

# push local repo to 'any_name_123'
git push any_name_123 --all
# optional: delete all tags before attempting to push local tags
git push any_name_123 --delete `$(git tag -l)
# push local tags to remote repo 
git push any_name_123 --tags

如果你愿意,你可以安排这项工作。我有一个PowerShell的工作来完成这项工作,还有很多功能要做。请下拉分支。

非常感谢您回答我的问题和建议。非常感谢您回答我的问题和建议。