本文介绍下如何配置VSTS(visual studio team service,其实就是微软SaaS版的TFS)通过Personal Access Token访问其下的Git代码库。

问题

使用git的时候,每次拉取和推送都需要输入密码是一件挺讨厌的事。
当我们使用github来托管代码时,github提供了几套机制来认证客户端,该配置页面如下图:

github的帮助文档很完善,这里就不展开了,具体参见截图下方小字链接generating SSH keysgenerate a GPG key and add it to your account

如果你的项目是开源项目,放github上没啥问题,如果需要不公开的私有库呢?
我们一般选择微软的VSTS,那么VSTS如何配置类似机制,避免每次都要输入密码?

获取 Personal Access Token

如图,Personal Access Token的配置页面,点击Add

填写描述,选择有效期限和适用哪个账户,选择 scopes,页面拉到底,点击Create Token

这里一定要注意了,图中打码并红色圈住的部分,一定要复制下来保存好,这个token只会在当前显示一次,以后是无法再次从vsts上获取的。

在本机管理 Personal Access Token

好了,我们拿到了Personal Access Token,接下来验证下是否可以正常使用这个token。
在本地打开一个目录,按住Shift键,鼠标右击空白处,选择在此处打开Powershell窗口:

在vsts中找到你的代码库(至少会有个MyFirstProject),并且复制clone地址。在Powershell提示符中输入

git clone https://familysrv.visualstudio.com/MyFirstProject/_git/MyFirstProject

如果出现新窗口要求输入微软账号,可以直接关闭,我们接下来可以在命令行中输入账号和token

如上图,命令行提示输入Password的时候,输入刚才拿到的Token即可。

至此,证明这个token确实是可用的。

可是当我们添加文件,推送上去的时候,还会提示需要输入账号密码!?

请注意,本文示例前面进行git clone的时候有警告:这是一个空库。
所以,首次git push进行推送的时候,需要声明远程分支,例git push orgin master:master

我们应该把这个token存到哪里?

请打开控制面板用户账户管理你的凭据windows凭据

在普通凭据的右侧,点击添加普通凭据,如图进行输入,密码填之前拿到的token即可。

重新打开Powershell,添加或修改文件,拉取,推送

没有再提示需要输入账号密码,搞定!

如果你是非windows系统,VSTS也可以配置SSH keys的方式进行认证,和Github配置方式差不多,具体见本文第二张图片VSTS左侧菜单
SSH public keys

参考

这篇讲了如何设置vsts的Personal Access Token 以及使用 Windows credentials manager 在本机存储这个token:
VSTS Personal access tokens with Git and Visual Studio 2017

这里有详细说明非windows系统如何避免重复输入Github认证密码:
Is there a way to skip password typing when using https:// on GitHub?

[2018-05-27]配置VSTS认证方式使用Personal Access Token的更多相关文章

  1. jenkins之配置git认证方式

    在使用jenkins构建时候需要从git下拉代码,需要配置认证方式 http拉取代码 配置用户名和密码认证 添加认证 设置用户名和密码 git认证 设置私钥认证

  2. Django 配置JWT认证方式

    1. 安装 rest_framework + djangorestframework_simplejwt 安装djangorestframework_simplejwt :pip install dj ...

  3. cas sso单点登录系列3_cas-server端配置认证方式实践(数据源+自定义java类认证)

    转:http://blog.csdn.net/ae6623/article/details/8851801 本篇将讲解cas-server端的认证方式 1.最简单的认证,用户名和密码一致就登录成功 2 ...

  4. SSO单点登录系列3:cas-server端配置认证方式实践(数据源+自定义java类认证)

    落雨 cas 单点登录 本篇将讲解cas-server端的认证方式 1.最简单的认证,用户名和密码一致就登录成功 2.配置Oracle的jdbc数据源,通过spring动态查询数据库 3.配置orac ...

  5. 修改CAS源码是的基于DB的认证方式配置更灵活

    最近在做CAS配置的时候,遇到了数据源不提供密码等数据的情况下,怎样实现密码输入认证呢? 第一步:新建Java项目,根据假面算法生成CAS加密工具 出于保密需要不提供自定义的加密工具,在您的实际项目中 ...

  6. ssh 服务器之间公钥认证方式的配置

    前言 项目中需要编写脚本在服务器之间上传或者下载文件,但没有相关服务器来测试脚本,于是就着手安装两台server,然后用ssh的相关命令去配置server之间公钥认证登录. 步骤 1. 在VM Box ...

  7. spring jwt springboot RESTful API认证方式

    RESTful API认证方式 一般来讲,对于RESTful API都会有认证(Authentication)和授权(Authorization)过程,保证API的安全性. Authenticatio ...

  8. 关于 RESTFUL API 安全认证方式的一些总结

    常用认证方式 在之前的文章REST API 安全设计指南与使用 AngularJS & NodeJS 实现基于 token 的认证应用两篇文章中,[译]web权限验证方法说明中也详细介绍,一般 ...

  9. thinkphp 比RBAC更好的权限认证方式(Auth类认证)

    Auth 类已经在ThinkPHP代码仓库中存在很久了,但是因为一直没有出过它的教程, 很少人知道它, 它其实比RBAC更方便 . RBAC是按节点进行认证的,如果要控制比节点更细的权限就有点困难了, ...

随机推荐

  1. android windowSoftInputMode属性详解(转)

    activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性. 这个属性能影响两件事情: [一]当有焦点产生时,软键盘是隐藏还是显示 [二]是否减少活动 ...

  2. kindeditor编辑器,获取textarea值

    在获取textarea值的时候,从数据库读出来的值都能获取到,但是新输入的值就得不到,只要是新输入的都得不到值 答案: 我昨天刚用kindeditor,我是使用ajaxForm提交表单的在360浏览器 ...

  3. Linux USB驱动数据结构

    struct usb_ctrlrequest {    __u8 bRequestType;    __u8 bRequest;    __le16 wValue;    __le16 wIndex; ...

  4. 2017.2.28 activiti实战--第六章--任务表单(一)动态表单

    学习资料:<Activiti实战> 第六章 任务表单(一)动态表单 内容概览:本章要完成一个OA(协同办公系统)的请假流程的设计,从实用的角度,讲解如何将activiti与业务紧密相连. ...

  5. 2017.2.28 activiti实战--第五章--用户与组及部署管理(二)部署流程资源

    学习资料:<Activiti实战> 第五章 用户与组及部署管理(二)部署流程资源 内容概览:讲解流程资源的读取与部署. 5.2 部署流程资源 5.2.1 流程资源 流程资源常用的有以下几种 ...

  6. eclipse离线安装插件过程

    离线安装插件: 1. help -> install New Softe.. 2. 打开安装插件界面 最后点击,next, 同意事项,重启eclipse.

  7. GridView 获取列字段的几种途径

    GridView是ASP.NET中功能强大的数据显示控件,它的RowDataBound事件为我们提供了方便的控制行.列数据的途径. 要获取当前行的某个数据列,我在实践中总结有如下几种方法: 1. Ce ...

  8. VueJS构造器:new Vue({})

    构造器 每个 Vue.js 应用都是通过构造函数 Vue 创建一个 Vue 的根实例来启动的: var vm = new Vue({ // 选项 }) 属性与方法 每个 Vue 实例都会代理其 dat ...

  9. git stash 保存当前工作状态

    1. git stash   暂存当前工作状态 2. git stash list 查看暂存列表 3. git stash save 'title' 暂存工作状态并添加说明 4. git stash ...

  10. Java源代码之LinkedHashMap

    Java源代码之LinkedHashMap 转载请注明出处:http://blog.csdn.net/itismelzp/article/details/50554412 一.LinkedHashMa ...