skip to Main Content

git worktree: jak mieć jednocześnie kilka wersji roboczych?

Wersją roboczą nazywam pliki na którymi pracujemy, to te gotowe do zmiany.

Zmiana gałęzi, zmiana HEAD naszego repozytorium powoduje również zmianę wersji roboczej. Zazwyczaj ta zmiana jest bardzo szybka, ponieważ git jest bardzo szybki, ale… im większe repozytorium i większe zmiany między wersjami, to czas potrzebny na przełączanie rośnie.

Czasochłoność przełączania powiększy także IDE, bo zmiana plików projektowych pociągnie za sobą ekran konieczności przeładowania solucji. W projektach z milionem linii, może być to bolesny proces.

A może proces budowy programu zmienił się na przestrzeni czasu?

Mając równolegle dwie różne wersje naszego repozytorium może być bardzo przydatne.

Myślisz sobie: „Znam rozwiązanie tego problemu! Użyję git clone!”. Jest to jakieś rozwiązanie, ale jest lepsze.

Czytaj resztę...

Zwijanie kodu w Visual Studio Code

Od wersji 1.17 w Visual Studio Code, można zwiać kod przy użyciu markerów zapisanych kodzie źródłowym.

Każdy z języków posiada tagi odpowiednie dla danego języka.

  • TypeScript/JavaScript: //#region oraz //#endregion lub //region oraz //endregion
  • C#: #region oraz #endregion
  • C/C++: #pragma region oraz #pragma endregion
  • F#: //#region oraz //#endregion
  • Powershell: #region oraz #endregion
  • VB: #Region oraz #End Region
  • CSS/Less/SCSS: /*#region*/ oraz /*#endregion*/
  • Coffeescript: #region oraz #endregion
  • PHP: #region oraz #endregion
  • Bat: ::#region oraz ::#endregion
Czytaj resztę...

Nowe komendy w Visual Studio Code (od 1.9 do 1.19 – 10 wersji zmian!)

Po pewnym okresie przerwy wracam do pisania o Visual Studio Code!

Dzisiaj przejdę przez nowe komendy które pojawiły się marca 2017 roku do dnia dzisiejszego.

Nie są to wszystkie komendy, wybrałem te najważniejsze a nadal jest ich trochę.

Każdą komendę będę opisywał następująco

  • skrót klawiaturowy – Opis co komenda robi – nazwa.komendy.wewnątrz.aplikacji

Nazwa komendy jest pomocna przy samodzielnym tworzeniu skrótów klawiaturowych, niektóre komendy nie mają domyślnie zdefiniowanych skrótów klawiaturowych.

Przypomnę, aby zmodyfikować skróty klawiaturowe, trzeba przejść do edytora skrótów klawiaturowych File -> Preferences -> Keyboard Settings lub skorzystać z skrótu Ctrl+K Ctrl+S

Czytaj resztę...

WiX Toolset – Jak zmienić nazwę pliku wyjściowego, aby zawierał informacje o wersji

Powiedzmy, że mamy projekt który tworzy nam instalator. Fajnie.

Projekt tworzy nam plik uruchomieniowy o nazwie MyInstaller.exe. Dobrze.

Wysyłamy taki plik naszej koleżance z pracy. Super.

Piszemy nowe funkcje i naprawiamy istniejące błędy. Extra.

Tworzymy instalator zawierający nową wersję programu. Bosko.

Musimy ręcznie zmienić nazwę z MyInstaller.exe na coś w stylu MyInstaller.1.1.exe. Smutek.

Nie róbimy rzeczy, które może za nas komputer zrobić.

Jak to naprawić smutek?

Czytaj resztę...

String enums w TypeScript

Jak typ danych może wyrazić dokładnie 1000 słów? enum String.

String może zawierać wszystkie słowa świata. Kiedy chcemy ograniczyć się tylko do kilku w TypeScirpt mogliśmy wykorzystać union types

Teraz (od wersji 2.4 – która powinna się wyjść lada dzień) mamy do dyspozycji możliwość tworzenia typów wyliczeniowych, które jako wartość mogą przyjmować łańcuchy znaków.
Czytaj resztę...

WPF i MEF – sterowanie wyglądem aplikacji w zależności od posiadanych zasobów.

Jednym z fundamentów WPF’a są zasoby – Resources. Definiowane w ResourceDictionary czyli słowniku zasobów. Każdy element słownika posiada swój klucz, który używamy do pobrania zasobu „z bazy”.

Odwołanie do zasobu może odbyć się na dwa sposoby.

  • StaticResource – Wartość jest ustalona podczas załadowania XAML.
  • DynamicResource – Wartość jest ustalona w momencie, kiedy obiekt ma się pojawić.

To zachowanie DynamicResource możemy wykorzystać do wprowadzenia ciekawych rozwiązań.

Jeżeli DynamicResource odwołuje się do zasobu aplikacji, to może być on przykryty przez inny zasób o tej samej nazwie.

Jeżeli mamy kilku klientów, a każdy z nich chce innych kolorów w swojej aplikacji, możemy załatwić tą prośbę dołączając do binarek .dll z zasobami, które zmienią kolory w odpowiednich miejscach.

Przykładowa aplikacja ma na celu wyświetlać dwukolorową flagę.

polish_flag

Aplikacja zawiera swoje zasoby zdefiniowane w osobnej .DLL o nazwach MainResources (podstawowe zasoby aplikacji), ClientResources (zasoby zmienione na danego klienta).

Czytaj resztę...

Tymczasowe sprawdzanie typów w kodzie JavaScript dzięki Visual Studio Code oraz TypeScript

Programistyczny edytor Visual Studio Code, jest napisany w TypeScript, co więcej każda nowa wersja Visual Studio Code przychodzi razem z nową wersją kompilatora TypeScript. Tak się składa, że oba produkty Microsoftu są ze sobą dobrze powiązane.

Ostania aktualizacja Visual Studio Code w wersji 1.12 (kwiecień 2017), przychodzi z kompilatorem TypeScript 2.3. Ta wersja otrzymała możliwość sprawdzania typów w kodzie JavaScript poprzez przełącznik --checkJs.

Możesz sprawdzić poprawność typów w kodzie JavaScript tymczasowo. Jeżeli dodasz na początku pliku .js komentarz // @ts-check, wtedy kompilator TypeScript przejdzie po typach i podkreśli na czerwono błędy.

Czytaj resztę...
Back To Top