Git Source Control
-
Not sure if there's a forum for this. If so, I'll move it. I'm working on a C# WPF app, and I need to get it under source control. The solution has projects specific to the app, as well as references to projects in my framework in other locations. So not all the projects are in the same solution folder. The other projets also need to be under source control. I need to set up a repo, and get the code checked in. I first tried using SVN on my server, but when I would try to commit at the solution level I got a message saying "Cannot perform commit because the targets are in different repositories". I can commit individual projects, but not the solution. I've never used Git before, and I'd like to give it a try. 1. Where do I get/create a repo? 2. Is there a Getting Started tutorial? Right now, I'm not interested in any other features other than source control. And, I need this pretty quick. So if this is going to take a week to set up, I'll have to find another option. BTW, Is TFS still up & running. Is that an option? Can someone point me in the right direction? Thanks
If it's not broken, fix it until it is. Everything makes sense in someone's mind. Ya can't fix stupid.
When I have to use GIT (which is becoming most of the time now), I use SourceTree - the GUI Front End that makes it a little easier. I usually break something, so I have to call in a GIT expert and they fix it all up (GIT experts love fixing GIT problems). So, yeah, if you use GIT, git yourself SourceTree. Then, git yourself a GIT expert.
-
Not sure if there's a forum for this. If so, I'll move it. I'm working on a C# WPF app, and I need to get it under source control. The solution has projects specific to the app, as well as references to projects in my framework in other locations. So not all the projects are in the same solution folder. The other projets also need to be under source control. I need to set up a repo, and get the code checked in. I first tried using SVN on my server, but when I would try to commit at the solution level I got a message saying "Cannot perform commit because the targets are in different repositories". I can commit individual projects, but not the solution. I've never used Git before, and I'd like to give it a try. 1. Where do I get/create a repo? 2. Is there a Getting Started tutorial? Right now, I'm not interested in any other features other than source control. And, I need this pretty quick. So if this is going to take a week to set up, I'll have to find another option. BTW, Is TFS still up & running. Is that an option? Can someone point me in the right direction? Thanks
If it's not broken, fix it until it is. Everything makes sense in someone's mind. Ya can't fix stupid.
FWIW, VS2019 16.6 has some enhancements where GIT is concerned. [Visual Studio 2019 version 16.6 Preview 2 Brings New Features Your Way | Visual Studio Blog](https://devblogs.microsoft.com/visualstudio/visual-studio-2019-version-16-6-preview-2/)
Cheers, Mike Fidler "I intend to live forever - so far, so good." Steven Wright "I almost had a psychic girlfriend but she left me before we met." Also Steven Wright "I'm addicted to placebos. I could quit, but it wouldn't matter." Steven Wright yet again.
-
GuyThiebaut wrote:
Git at home
How is that set up? Where is the code hosted at?
If it's not broken, fix it until it is. Everything makes sense in someone's mind. Ya can't fix stupid.
> Where is the code hosted at? The main thing to understand about git is that it separates the concerns of *version control* and *centralized storage*. Initially you can have version control stored locally, and then optionally synchronized to a server. The nice thing is that you can commit local changes, revert, switch branches, etc. without access to the centralized server. The reason this is possible is that you have a copy of the entire repository on your local, including all commits, and that allows you to work offline, for example. The hardest part is synchronizing your local copy with a copy elsewhere, called a "remote". It's not usually bad, but it can get pretty complicated. See https://medium.com/@ottovw/forget-git-just-use-subversion-or-perforce-8412dc1b1644[^] One way to understand why git is the way it is, is to understand the design rationale behind it. Linus wanted the ability to work while offline, so he could work while traveling: this means that check-out (aka locking) is abolished, merging is the standard approach to check-in (aka commit), tooling keeps track of changed files and also handles branch switching, and viewing history/blame/commit graphs is fast and optimal. It's meant as a DVCS, with a robust security model and scalability to handle projects like Linux (and enables monorepos, for example). I used to hate git, because it makes things twice as complicated as, say, SubVersion. Honestly, most of the reasons for using git are not applicable to most enterprise development, unless you have massive codebases and teams. Probably the main reasons companies embrace it is 1) everyone else is doing it and 2) it's free. These days, especially after having to deal with even "modern" TFS and its lack of performance, mainly due to its coddling of the developer (omigosh, everything--especially merges--has to go through the server in case a workstation suddenly blows up), I find I'm liking git more and more. There are alternatives like Perforce or PlasticSCM that do DVCS well, if that's a requirement, but they also cost money. If you're just doing a small project, a local git repository occasionally synced with a remote is trivial to set up and easy to use. One may argue that its learning curve makes its cost non-zero.
-
Not sure if there's a forum for this. If so, I'll move it. I'm working on a C# WPF app, and I need to get it under source control. The solution has projects specific to the app, as well as references to projects in my framework in other locations. So not all the projects are in the same solution folder. The other projets also need to be under source control. I need to set up a repo, and get the code checked in. I first tried using SVN on my server, but when I would try to commit at the solution level I got a message saying "Cannot perform commit because the targets are in different repositories". I can commit individual projects, but not the solution. I've never used Git before, and I'd like to give it a try. 1. Where do I get/create a repo? 2. Is there a Getting Started tutorial? Right now, I'm not interested in any other features other than source control. And, I need this pretty quick. So if this is going to take a week to set up, I'll have to find another option. BTW, Is TFS still up & running. Is that an option? Can someone point me in the right direction? Thanks
If it's not broken, fix it until it is. Everything makes sense in someone's mind. Ya can't fix stupid.
Git is now my preferred way of doing source code control. But the learning curve is ridiculously steep. If you have to get it together in a week, I'd say use Tortoise SVN or something.