Change Team Foundation Server Work Item Default Status to Associate

On my new team we use Work Items to track our progress, and I love it .  However, there is one thing that has bugged me, the default status when assocaiting my checking wiht a Work Item is Resolved.  Well that is not how I work.  I check in frequently, so I wanted to see if I could change it so that Associate is the default.  Found this User Voice Discussion that had just what I needed.  I am recapping it here to save a few clicks.

Visual Studio 2015

image

 

Visual Studio 2013

Available in Visual Studio 2013 Update 4 or you can use the following registry hack.

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\12.0\TeamFoundation\SourceControl\Behavior]
"ResolveAsDefaultCheckinAction"="False"

I have not test.  As always when editing the registry by hand, make a backup and proceed with caution.

Other Obervations

That same thread also states that  this could be cause becuase the Work Item original state is still in “To Do” and if it is transitioned then it will default to Associate.

Git For Windows: Aliases

I just got a new laptop at work and when setting up Git moved to Git For Windows.  One challenge I ran accross was where to put my aliases.  I have several I used that made my life easier.

Step 1 – Find the location of the git config file

To do this I opened gitbash and executed $ git config --list --show-origin

Which produced the following:

$ git config --list --show-origin
file:"C:\\ProgramData/Git/config"       core.symlinks=false
file:"C:\\ProgramData/Git/config"       core.autocrlf=true
file:"C:\\ProgramData/Git/config"       core.fscache=true
file:"C:\\ProgramData/Git/config"       color.diff=auto
file:"C:\\ProgramData/Git/config"       color.status=auto
file:"C:\\ProgramData/Git/config"       color.branch=auto
file:"C:\\ProgramData/Git/config"       color.interactive=true
file:"C:\\ProgramData/Git/config"       help.format=html
file:"C:\\ProgramData/Git/config"       http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
file:"C:\\ProgramData/Git/config"       diff.astextplain.textconv=astextplain
file:"C:\\ProgramData/Git/config"       rebase.autosquash=true
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig"    credential.helper=manager

As you can see my git config file is located in “C:\ProgramData\Git\config”.  I am sure that this is due to some policy that is on the laptop becuase this is not where the documenation says it should be.

Step 2 – Add the aliasas

Now that I know where the config file is I can add the alisases, here are mine.

ci = commit --verbose
cn = commit --verbose --amend
ca = commit --verbose --all
cw = commit -m \"WIP\"
cm = commit -m
cc = commit -c
b = branch
bc = checkout -b
a = add
aa = add --update
ap = add --patch
c = checkout
f = fetch
pr = pull --rebase
pom = push origin master
r = rebase --interactive HEAD~10
rc = rebase --continue
ra = rebase --abort
s = status
sp = -p status # with pagination
ss = -p status -s
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
lga = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative --all
alias = config --get-regexp 'alias.*'

My updated config file looks like this now.

[core]
    symlinks = false
    autocrlf = true
    fscache = true
[color]
    diff = auto
    status = auto
    branch = auto
    interactive = true
[pack]
[help]
    format = html
[http]
    sslCAInfo = C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
[diff "astextplain"]
    textconv = astextplain
[rebase]
    autosquash = true
[alias]
    ci = commit --verbose
    cn = commit --verbose --amend
    ca = commit --verbose --all
    cw = commit -m \"WIP\"
    cm = commit -m
    cc = commit -c
    b = branch
    bc = checkout -b
    a = add
    aa = add --update
    ap = add --patch
    c = checkout
    f = fetch
    pr = pull --rebase
    pom = push origin master
    r = rebase --interactive HEAD~10
    rc = rebase --continue
    ra = rebase --abort
    s = status
    sp = -p status # with pagination
    ss = -p status -s
    lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
    lga = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative --all
    alias = config --get-regexp 'alias.*'

Step 3 Save and Test

Once I updated my config file, I saved it and then opened a new gitbash windows and BAM! All of may aliases were back.  Happy Day!

Calendar

<<  May 2017  >>
MonTueWedThuFriSatSun
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

View posts in large calendar

Month List