So basically I am trying to learn C# and JS and I'm doing so by reading documentation and solving some small exercises.
I read somewhere that uploading most of your work to GitHub is helpful when you apply for a job so people can actually see that you've been working.
Since I am not that familiar with GitHub (I read some documentation but it confused me a bit) I wanted to know what is the best way to upload my exercises there?
I think you should do some beginner course about "Git" and "Github".
It's definitely a good idea to use GitHub desktop. This tool makes it easier to manage and commit changes.
The easiest way would be to create a git repository for each of your projects. Put the files in there and upload them to GitHub.
Try looking at GitHub documentation like this to get started:
https://guides.github.com/activities/hello-world/
I have heard that, product based companies will look for what we have done outside of projects and also looking for the github profile.
In the meantime, I have created an automation application which addresses the specific requirement (Timesheet) in our organization. So, I thought of uploading this one too.
I have also done the screen cast and uploaded it to YouTube for adding in the profile (Resume).
This exact tool is not useful for all the people , but useful for the people in our organization, in which they can edit/contribute more.
Now I am having the question like, can I upload this kind of the code to GitHub?
Thanks.
Yes, you can.
Code on GitHub does not have to be useful to other people. You can push code there even if it is only useful to you or people in your organization.
You could also use a private repository if you do not want other people to see the code.
See: https://github.com/pricing
I've been working with a lot of my files on the go recently, and in the process often times accumulated several copies of files in different stages of completion/revision. I'm working on any number of projects at a given time, so it's not always easy to remember or figure out quickly which version I should continue working on.
What type of options would you recommend that allow me to track changes locally and if possible with files I work on while at a remote location? I've never worked with file versioning or tracking systems, so not sure what direction I should be looking in. I work mostly with HTML, CSS, and PHP.
Any help is awesomely appreciated! Thanks.
PS. Don't know if I should have this in a separate question but what options are available for the same type of thing, change tracking/logging for files on server? Preferably something that not only vaguely notes a file has been changed, but that tracks specific changes that have occurred in files.
It's seems to me that github is prefect choice for your requirement. You can create repository for maintain the history, it's easy to use and it is free
https://github.com/
There are many free online services which provides you with large spaces to store your personal materials, mails, etc. But is there any place that can let us host our code - which keeps the change history?
Google Code or SourceForge may not be a ideal place because it requires creating a project which is specific and useful to others, while what I want is a place to hold any kind of code which I think is useful but may not be for anybody else.
It's all about Github. 300 MB repository for free. Nice interface, easy to use. Plus we all know GIT > SVN :)
You can get free GIT and SVN hosting at unfuddle.com
BitBucket allow for public and private Mercurial repositories.
Github has Gists that might work for you. Also, Snipplr.
http://codeplex.com is where MS provides open source source control via Team Foundation Server.
projectlocker is also a good alternative for free Subversion, Git hosting..
You can also get free, private SVN hosting at http://beanstalkapp.com/. Their 100MB package is free.
Google Code link.
How about http://cvsdude.com/ which paid or http://xp-dev.com/ which is free.
come on guys don't you see that he is interest only in hosting online some fragments
of code like some functions etc not full projects and also not public but private.
Of course it is possible with each and every solution you all said in your posts
but it is not exactly what he was looking for .
You all replied like spammers and is that's funny
So why don't you just use http://gist.github.com/
as someone already mentioned
You can host private projects on DevjaVu is you want to use Subversion.
http://www.svnhostingcomparison.com/
CVSDude does free 2M subversion repository, you can also use CVS if you pay.
I've used http://planetsourcecode.com/ to store all sorts of bits of code. Users even upload entire applications.
There are even online code editors available (well, a kind of, that project is still in the development phase).
Linky: https://bespin.mozilla.com/
I've used CodeSpaces for over a year now and never had a problem. I'm a new user so I apparently can't post links...
There are plenty of answers already submitted which are suited to hosting full-fledged applications so I won't bother adding to the list but if you're looking at hosting smaller things (code snippets, simpler projects) with revision history you could consider using a wiki?
I know this was posted 4 years ago, but you could always just sign up on Pastebin and have private source code there.
Pastebin has been around since 2002 and is currently "the #1 paste tool". It supports a number of syntaxes (including C++, C, Ruby, and Java. Full list on site.)
Edit;
Their PRO plan is only $2.95 USD for one month or $1.99 USD/mo if you purchase for a full year. You can find out more on the limits of free vs Pro here.
Edit 2;
If nothing else, sign up for Dropbox, SkyDrive, or Mediafire and upload your files there.
Team Services has free, private, unlimited, Git repos for version control. You also get integrated bug and work item tracking, enterprise Agile tools for DevOps, like backlogs and Kanban boards, automated build, test, and release plus other team capabilities to build and ship apps.
You can connect with Xcode, Eclipse, IntelliJ, Android Studio, Visual Studio, or any dev tool you like.
Team Services is free for the first 5 users with Basic access, plus unlimited stakeholders working on the backlog, and Visual Studio subscribers. Here's how to get started with Team Services.
Eric suggests that you read your team's diffs every morning. Can I get TFS to automate this in some way? Ideally I'd like an email with all of the differences in, but I'd settle for a link to each of the commits.
As someone who works for Eric and who has the behaviour of checking the diffs each morning let me explain what I do. I'd like to think that I was one of the people he was thinking about when he wrote the post, but I know for a fact that he didn't know I did the diff checking each morning :-)
In Eclipse I use the Team, Synchronize... functionality to compare my local workspace with the latest on the server. As I do a get latest frequently, this tells me what has happened since I last did this (i.e. what changed while I wasn't looking).
In Visual Studio, I can do a similar thing by right clicking on the root folder of the area that interests me and selecting Compare... and then doing a compare of the Workspace version with the latest version.
Alternatively, you can just do a "History..." on the folder that is of interest and a brief scan down the history view will show you what has been happening and you can go look at what is interesting. It also encourages you to leave good check-in comments, and to encourage your developers to do the same :-)
I used to have email alerts configured for each check-in (Team, Project Alerts...), but I just ended up ignoring them most of the time. I even have a robotic rabbit configured to talk to me when someone does a check-in or runs a build - but this is only useful during the day, not checking what has happened the previous day while I was asleep (I live in a different time-zone to the rest of my colleagues so they do a lot of work while I sleep and vice-versa, making the practise of diff-checking even more useful)
In theory it would be possible to write a program that did generate you a diff each day between the latest version and your workspace version, however I've never bothered myself. This is partly because as I find the most value of the practise comes in exploring the changes that were made each day rather than just reading about them. I also admit that I wasn't aware that anyone else in the world was doing this daily diff routine - I figured I was alone in my code voyerisum, but obviously not!
UPDATE Feb 12, 2009: The following blog post just came to my attention.
http://blogs.msdn.com/abhinaba/archive/2008/07/07/auto-generating-code-review-email-for-tfs.aspx
It talks about (and provides source for) a tool called CRMail that will generate an email from a shelveset that will contain links back to Team System Web Access to show the diffs for each change in the changeset. It would be possible to modify this source to get it to show you diffs between changesets if you wanted to. Then you would just need to hook it up to run either as a nightly scheduled task or on every check-in by subscribing to the check-in event from TFS.
Have you explored setting up a report on the project portal that would show diffs based on date? I haven't done this (and I'm at home now so I can't investigate it), but I know that there is a lot of information you can get out of the portal. Whether you can get code diffs, I don't know.
The other alternative would be automating something with tfsadmin or the power tools. Again, not at work so I can't look at it, though the power tools seem like they may make it possible to do what you want from the docs.
A quick solution would be to configure project alerts to send you one email per changeset.
Filter these into a separate folder in your email client, and review them at your leisure.