Today I Learned

[GIT] Szybkie przechodzenie między repozytoriami w konsoli

Posted on

Idziemy do katalogu z zainstalowanym GITem do folderu etc (C:\Program Files\Git\etc).

Jest tam plik bash.bashrc.

Plik edytujemy jako administrator i na końcu dodajemy aliasy:

To samo można uzyskać na wiele innych sposobów (ten akurat działa w mojej konfiguracji systemu). Ten tutaj sprawia, przy otwieraniu konsoli gitowej dodane zostaną do basha aliasy. Dzięki temu możemy wyjść poza to co można dodać w .gitconfig i możemy korzystać z łączenia z komendami konsolowymi takimi jak grep w przykładzie.

Nowe nauczone

Posted on Updated on

Shape? shape = null;

var shapeAsByte = (byte?)shape;
var s = shapeAsByte.ToString(); // s = "";

var s1 = shape.ToString(); // s1 = "";

Wydawało mi się że ToString() na wartości null się wywalić NullReferenceException, ale jednak przypisało “”.

R#:
AlT+Enter na teście albo na klasie pokazuje menu z którego można wybierać Run/Debug Test. O ile w teście korzystam ze skrótów (np CTRL+T+D) to na całej klasie nie znałem tego.

Usuwanie plików z rozszerzeniem *vc.db

http://stackoverflow.com/questions/36407386/what-is-the-vc-db-file-in-visual-studio-projects

How can I recursively find all files in current and subfolders based on wildcard matching?


find . -name *.VC.db


find . -iname *.vc.db

Use better console.log overload

console.log(“node: “, node); // one liner is better

console.log(“node: “);
console.log(node); // two lines is not so good

Remove *.vspscc files (used by TFS, no longer needed for git)

https://social.msdn.microsoft.com/Forums/vstudio/en-US/9920911d-1a7e-4ada-90cd-b1b910586cf4/why-do-you-need-the-vspscc-and-vssscc-files?forum=tfsgeneral

Ściągawka z komendami konsolowymi

Posted on Updated on

git reflog | grep menus
– wyszuka wszystkie zawierające “menus”

grep -t DotSetting .gitignore

find . -type f -name *.csproj
– wyszukaj rekursywnie pliki zgodne z patternem

find . -type f -name *.csproj -delete
– dodaj na koniec “-delete” i skasuje je

Ćwicz regex online

Posted on Updated on

http://regexstorm.net/tester
tester C# online Regex.

https://regex101.com

Można shareować z ludźmi z teamu i sprawdzać jak działają regex’y.

Instalacja SQL Management Studio 2012

Posted on

Po pobraniu i uruchomieniu trzeba wybrać aktualną instancję SQL Server (Express) i dopiero wtedy gdzieś w opcjach dodatkowych doinstalować Management Studio.

Git commit jako ktoś inny

Posted on Updated on

W Git można dodać autora commitu jakiego się chcę. Domyślnie jest to brane z pliku konfiguracyjnego i będzie to nasza kombinacja username/email. Można to jednak prosto nadpisać.


git commit --author="Konrad Dzwinel <kdzwinel@gmail.com>" -m "Commited as the Konrad for fun."

Na GitHubie w naszym commit pojawi się nawet odpowiednia twarz osoby, którą sobie losowo wzięliśmy z GitHuba.

Git, Commited as somebody else
Po prostu się pod kogoś podszyłem

W git osoba która wykonała push do repozytorium, a osoba która jest jako author commita to moga być różne osoby i warto o tym pamiętać. Nie jest to jakieś złe (takie commity nie pojawia się u Konrada w “latest commits”), w ten sposób możemy zaznaczyć że ten dobra robotę wykonał ktoś inny i dla niego zarezerwowane sa credits.

Poziomy logowania

Posted on Updated on

Przyklejone z wiki o log4j:

Level Description
OFF The highest possible rank and is intended to turn off logging.
FATAL Severe errors that cause premature termination. Expect these to be immediately visible on a status console.
ERROR Other runtime errors or unexpected conditions. Expect these to be immediately visible on a status console.
WARN Use of deprecated APIs, poor use of API, ‘almost’ errors, other runtime situations that are undesirable or unexpected, but not necessarily “wrong”. Expect these to be immediately visible on a status console.
INFO Interesting runtime events (startup/shutdown). Expect these to be immediately visible on a console, so be conservative and keep to a minimum.
DEBUG Detailed information on the flow through the system. Expect these to be written to logs only.
TRACE Most detailed information. Expect these to be written to logs only. Since version 1.2.12.