For some reason a Visual Studio 2015 Community Edition installation I had on one of my machines was experiencing problems: solution files were not loading properly, and what’s worse is that installation instance had gone totally missing from “Uninstall a Program” in Windows Control Panel. Also, every time I tried running the setup file
vs_community.exe from the ISO image, I would get an error saying “The product version that you are trying to set up is earlier than the version already installed on this computer”.
What I ended up doing was to run the setup file with the two following switches:
vs_community.exe /uninstall /force
Luckily, it went forward with uninstalling the instance I had on my machine.
If you define a function in the global namespace in a C++ header file and encounter linker errors (complaining about the function already defined elsewhere), there’s a simple fix! Simply mark the function as
inline. This will prevent the duplication of the function in other source files.
Note that using inclusion guards does not solve this problem and you must define the function as
In case you’ve pushed an unwanted commit to GitHub (or any upstream Git repository), you can simply undo it. To do so, move the HEAD to the commit that you want to undo to and then run the following command:
git push -f origin HEAD^:master
Let’s say that in your git repository, you have a
master branch and an experimental branch. You’ve fixed a bug on file
A on the
experimental branch and you would like to commit that fix to the
master branch. This is possible using the
git cherry-pick command.
First, switch to the
experimental branch and execute
git log. Take note of the ID of the commit you’d like to merge into the
master branch. Now switch to the
master branch and use the command
git cherry-pick ID where ID is the ID of the commit you noted earlier. This will merge the selected commit into the master branch.