Does TFS 2015 Git provide a way to create pull request from a forked repo back to the original repo? - tfs-2015

I found a way to "fork" a TFS 2015 Git repo. But I don't see a way that a user on a fork could create a PR from their fork back to the original repo (upstream). Can this be done?

Related

How to migrate team project with history within same VSTS account?

We need to migrate our VSTS team project. I already saw that this is an eagerly awaited feature from the Visual Studio user Voice.
However, in our case the new team project is to be in the same VSTS account. Is there a way to do this while also keeping version control change history? Keeping the change history available as part of the old team project is unfortunately not an option as we will lose access to the old team project soon after migration.
If somebody has done this before with the help of any of the below tools, then it would be great if they can share their experience:
VSTS copy project
VSTS sync migrator
OpsHub
It's a bit unclear what you're about to migrate from where. And why you'd lose access to the existing project. And you have different options based on the current source control type selected.
One option which you could try is to create 2 new accounts and leave the whole old account in read-only state. That should leave the history available to everyone. You can then spin up as many new accounts as you want, using just the latest version of the sources.
Git
If it's a Git repository it's as simple as making a local clone of the whole repo, creating a new team project in VSTS and pushing the clone into its second home.
TFVC
If it's TFVC, it's much harder. I've used OpsHub in the past which works reasonably well, but in our case completely got stuck in a couple of strange merge situations. Those were probably created as part of work done back when that team project was hosted in TFS 2008, so you may be luckier than we were.
You could decide to move to Git as part of your migration. Use git-tfs to create a local git repository with all your TFVC history and then push that into a bare Git repository in your new team project. Or use the TFVC import tool. There's quite a bit of documentation on this subject.
The VSTS Sync Migrator supports a snapshot without history as far as I can tell. Which would not suit you.
VSTS Copy Project doesn't support TFVC, and is no option in this case.
An option that's missing from your list is Timely Migration, it supports TFVC to TFVC migrations among other options. I've used them a long time ago to copy data between TFS servers. Back then they were working exactly as advertised.

VS2017 setup - wrong team services account used?

Newbe to Team Services...
Vs2015 Desktop Community for original setup.
I stumbled through the setup of our ...visualstudio.com account and it is working on two PCs. I went down the GIT path but I'm not really clear on the process, I just kept banging on it until it worked. It is working (mostly) for two VB.Net WinForm projects on two PCs.
I'm now setting up a brand new PC and I installed VS2017. I didn't install any extra software for GIT (can't find any directions for source control install for that either, TS GIT quick start doesn't mention setting up GIT) I logged into the visualstudio cloud from the new install and cloned one of the projects from the cloud GUI. The files came down OK but the project type is evidently wrong because the Solution Explorer always lists all files and I can't open a form in the GUI. I also tried to use VS2017 to clone/download the project with the same result.
Do I need to install GIT in a fresh install of VS2017? Download from where/how to get a proper hookup with VS2017?
Why am I getting the files OK but the project type is not VB.Net Winform? Can that be tweaked or should I start over?
I was able to download using the .zip option from visualstudio.com but it isn't connected to a local or cloud repository. I'm not sure it is a good idea to connect these "out of band" files to an exisitng repository. The project is of the correct type and it builds OK and works.
Thanks!
View of solution in broken project:
It’s unnecessary to install extra software after you installed VS2017.
In short, use VS to work with git repo on VSTS (visual studio team services), you just need to connect your VSTS account in VS and clone a local repo as working copy for VSTS git repo. Operations in VS 2017 should be:
Connect your VSTS account in VS2017.
VS2017 -> team explorer -> manage connections -> connect to project.
If your VSTS account (sign up email address) hasn’t connected yet, click add an account. After that, you can select your VSTS project/repo to connect/clone.
Clone VSTS git repo locally.
If you didn’t clone git repo in step1, then right click a VSTS repo -> clone.
Work on the local repo.
After successfully cloned a repo, you are working on the local repo, you can also find the local repo’s name and branch you are working for in the right bottom of VS2017. Now the solutions should be same as what you find in VSTS.
And you can make change and commit for them. And then push your local commit(s) to VSTS git repo.
For VS2017, there are two forms to view solutions and files: solution related and all files/folders.
If you can’t find .Designer.vb and .resx files, you must use the second mode as the above graph.
To view all files/folder, you can switch the view to first mode as below graph.

Dependencies from git

I'm playing a bit with the new Microsoft.AspNet.Identity but the 3.0.0-beta2 looks very different from the current state of affairs in git. I'd like to build against he git version.
I seem to remember hearing that it possible to reference a git repository directly from the dependencies in project.json. How does one do that? What's the syntax?
There are two options:
Instead of using the NuGet feed, switch to the Nightly feed on MyGet. We produce builds on every checkin from the code in Git. The latest versions on the MyGet feed are beta4-*
Clone the repo and use global.json to point to the sources, as described in this article
Adding a reference directly to a Git repo without cloning it beforehand is not supported.

what is diffrence between GIT and Tortoise Repository?

I am new to this forum but i found very quick responce from active developers.
i have query with technical diffrence between "GIT" and Tortoise "SVN". if any one has work on it please give me detail description.
thanks
tousif shaikh.
You mean surely a difference between Git and svn? Tortoise is just a GUI for (mostly) svn.
Take a look at this wiki article: https://git.wiki.kernel.org/index.php/GitSvnComparison
or at this thread: https://stackoverflow.com/a/161572/1758762 :
SVN is one repo and lots of clients. GIT is a repo with lots of client repos, each with a user. It's decentralised to a point where people can track their own edits locally without having to push things to an external server.
SVN is designed to be more central where GIT is based on each user having their own GIT repo and those repos push changes back up into a central one. For that reason, GIT gives individuals better local version control.
and so long ...
SVN workflow:
The trunk directory represents the latest stable release of a
project.
Active feature work is developed within subdirectories under branches
When a feature is finished, the feature directory is merged into
trunk and removed.
Git workflow :
A Git repository stores the full history of all of its branches and
tags within the .git directory.
The latest stable release is contained within the master branch.
Active feature work is developed in separate branches.
When a feature is finished, the feature branch is merged into master
and deleted.

Which SCM system to use with Xcode 4 for a lone developer?

I'm an iOS developer looking to better manage the projects I am creating. I've never touched SCM before so I'm not sure which system to use.
I'd like to keep track of changes to the different apps I'm making for my boss, but also have them in a centralised place, and be able to branch off and be working on features separate from the main app and then merge the changes back in when I'm finished. All of this will be done locally (stored on an external hard disk in my office), and once versions are complete I'd like to be able to export a copy without the SCM features to send to my boss.
I've just upgraded to Xcode 4 and noticed Git is built in. I played around with both Subversion and Git, but it sounds like Git is what would fit my needs better. However, it seems to be totally different to Subversion. The Xcode 4 documentation suggests Git is best for lone developers, but that doesn't seem the case. If the git repository is inside your working copy, how on earth do you make branches of it? Where do you send your changes to? Do you copy the entire working directory and use that as your branch?
Just looking for someone to explain in plain english which SCM system would be best for a lone developer to use and any tutorials people may know of to help me understand it.
Thanks for any help!
Go for git!
The repository actually resides in your working directory. There is .git folder which contains all the data about your branches and commits and whatsoever. You can create a bare repository(only the contents of the .git folder) if you like but having both in the same place is nice, especially if you are a single developer who doesn't need distribution.
Branching in git is very easy:
# create the branch
git branch mybranch
# switch to branch
git checkout mybranch
# show branches
git branch
Git does not depend on a server like svn does. You can have distributed development by using remotes but this is not necessary.
If you like to make a copy for your boss without the git files in it do a
git archive branchname --format=zip -o tree.zip
I suggest some reading on git
Git in five minutes
Git Community Book
The Thing About Git
Branching in git is very different from SVN. Branching happens in place, in stead of in another directory.
Read this book and other resources to get a better understanding about how git works
About the centralized server, Git is a decentralized SCM. That means that every clone contains the entire repository, not only the current working directory.
That doesn't mean you can't have a central repository. On the central server you create a bare repository, and on you're local machine you clone from that repository, push and pull from that repository, often through ssh.