Personal hint: this post is in English. I decided to write selected posts in English, which I think are of value for anybody on this planet…
Let’s say you want to create a Bower package in a private Git that’s hosted on TFS. This is no unusual requirement, if you have a corporate environment with a modern ASP.NET Core project that uses TFS and npm/Bower as well – status quo in my current project 🙂
Creating a Bower package in TFS
To create a Bower package in TFS, you first have to create a Git repository in TFS that hosts the Bower package. We’ll use the default setting, where a Git repository matches a single Bower package 1:1. This is necessary to use tags for the repository as versions of the Bower package and helps us in terms of SRP/SoC.
Well… to create a Git repository in TFS 2015, you first need a team project. Then, select the project in TFS Web Access, choose Code and click on the repository dropdown to create a Git repository:


Now you can clone the Git repository locally. You can for instance use Visual Studio 2015… or the Git tool of your choice, e.g. the geeky command line 🙂
That’s the time to fill the Bower package. Create your content and add a proper bower.json, for example:
{
"name": "my-bower-package",
"version": "0.0.1",
"license": "MIT",
"authors": ["Your name"],
"ignore": [
"README.md",
".git*"
]
}
That’s it. git commit your changes, create a tag for the initial version of the Bower package (git tag -a 0.0.1 -m "Version 0.0.1") and push your local repo to TFS (git push, git push --tags). There you have your very first Bower package in Git on TFS. Easy, right? 🙂
Using the Bower package from TFS
Let’s assume that you already have a web project (e.g. an ASP.NET Core project) with a bower.json. Edit the bower.json to contain your Bower package from the Git repo on TFS as following:
{
...
"dependencies": {
"my-bower-package": "git+https://USER:PWD@mytfs:8443/tfs/MyCollection/MyTeamProject/_git/MyProject_my-bower-package#VERSION"
}
}
Now do a bower install or save the bower.json in your Visual Studio project which automatically performs a bower install. Aaaand… you should now have your Bower package in your project.
Getting rid of the credentials
It’s really dirty to have username/password in your bower.json, even more when using the Bower package in a team project. But don’t worry, let Git save your credentials! Just run:
git config --global credential.helper wincred
and then do some call against your git repository, e.g.:
git ls-remote --tags --heads https://mytfs:8443/tfs/MyCollection/MyTeamProject/_git/MyProject_my-bower-package
You should now be asked for your username/password and Git remembers them. Now you can remove your credentials from bower.json and you’re done. Alternatively, you can of course add a read-only technical user or allow anonymous access to your Git repository in TFS.
1 Kommentar
-
I suggest you to switch to https://github.com/Microsoft/Git-Credential-Manager-for-Windows to manage Git authentication.