Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C#] Upload Projektu Na Github

Ostatnio zmodyfikowano 2026-09-02 21:53
Autor Wiadomość
tBane
Temat założony przez niniejszego użytkownika
[C#] Upload Projektu Na Github
» 2026-09-01 03:13:17
Cześć.
Chce uploadowac projekt utworzony Visual Studio w C# na Github.

Z C++ robi się to za pomocą skryptu cmakelists - tj skrypt ten potrafi odtworzyć projekt - i gitignore do blokowania ciężkich plików projektu.

Jak zrobić coś takiego w C#?
Jak budować projekt skryptem tak żeby można go były wrzucić na Github bez ciężkich plików projektu VS?

P-184512
DejaVu
» 2026-09-01 17:03:29
Nie ma ciężkich plików w C#. Wrzucasz po prostu sln i vcxproj i pliki źródłowe. Katalogi binarne wykluczasz z wrzucania na repo i tyle.

W C# .NET 8 (i wyżej) wystarczy mieć vcxproj w katalogu w którym masz kod źródłowy i... w konsoli napisać:
dotnet build
i projekt się zbuduje. Jak chcesz uruchomić go to piszesz:
dotnet run
Narzędzie .NET samo sobie znajdzie projekt i go skompiluje/uruchomi. Jak masz więcej jak jeden projekt w katalogu to wystarczy na końcu dopisać jego nazwę.

Projekty działają zarówno na Windowsie jak i Linuxie więc... możesz rozwijać kod na Windowsie w Visual Studio, a możesz też siedzieć sobie na Linuxie i kodować dokładnie tak samo jak na Windowsie - z tą różnicą, że nie będziesz miał Visual Studio do dyspozycji, ale nadal funkcjonalnie wszystko działa jak trzeba.
P-184513
tBane
Temat założony przez niniejszego użytkownika
» 2026-09-01 20:10:53
Dobra, Skleciłem na szybko jakiś proj. Czy mógłbyś ocenić strukturę plików?
Fajnie, że Visual Studio automatycznie dodaje nowe pliki do projektu :D

https://github.com/tBane-Dev/TestCS.git
P-184514
jankowalski25
» 2026-09-02 06:06:34
Czy mógłbyś ocenić strukturę plików?
Możesz dodać jeszcze folder "obj/" do ".gitignore", a tak poza tym, to chyba w porządku.
P-184515
tBane
Temat założony przez niniejszego użytkownika
» 2026-09-02 14:58:29
Ok dzięki :-)
Dodałem dwa foldery do
.gitignore

obj/
bin/
P-184516
DejaVu
» 2026-09-02 20:38:58
W C# nie tworzyłbym katalogu src. Po prostu dziel sobie kod na moduły. Przykład:
.../Libraries/ScSharp$ tree -L 2
.
├── bin
│   ├── Debug
│   └── Release
├── Binding
│   ├── Binder.cs
│   ├── BindingApi.cs
│   ├── BoundModule.cs
│   ├── Builtins.cs
│   └── ScriptType.cs
├── Documentation
│   ├── DocumentationApi.cs
│   └── FunctionDocumentation.cs
├── ExecutionLimits.cs
├── ExecutionStats.cs
├── Introspection
│   ├── ScriptFieldMetadata.cs
│   ├── ScriptFunctionMetadata.cs
│   ├── ScriptFunctionMetadataResult.cs
│   ├── ScriptIntrospectionApi.cs
│   ├── ScriptParameterMetadata.cs
│   ├── ScriptTypeMetadata.cs
│   └── ScriptTypeMetadataKind.cs
├── obj
│   ├── Debug
│   ├── project.assets.json
│   ├── project.nuget.cache
│   ├── Release
│   ├── ScSharp.csproj.nuget.dgspec.json
│   ├── ScSharp.csproj.nuget.g.props
│   └── ScSharp.csproj.nuget.g.targets
├── Parsing
│   ├── Lexer.cs
│   ├── Parser.cs
│   ├── ParsingApi.cs
│   ├── Token.cs
│   └── TokenKind.cs
├── Runtime
│   ├── MemoryEstimator.cs
│   ├── RuntimeContext.cs
│   ├── ScriptFailureException.cs
│   ├── ScriptValue.cs
│   ├── StorageMapper.cs
│   └── Vm.cs
├── ScriptDiagnostic.cs
├── ScriptError.cs
├── ScriptErrorType.cs
├── ScriptRequest.cs
├── ScriptResult.cs
├── ScriptRunner.cs
├── ScriptRunStatus.cs
├── ScriptValidationResult.cs
├── ScSharp.csproj
├── SCSHARP_IMPLEMENTATION_GUIDE.md
├── SCSHARP_LANGUAGE.md
├── Serialization
│   ├── JsonInputMapper.cs
│   └── JsonResultWriter.cs
├── Sessions
│   ├── ScriptSession.cs
│   └── StorageValue.cs
└── Syntax
    └── SyntaxNodes.cs


To jest akurat biblioteka, ale czy to biblioteka czy program to koncepcyjnie tak warto organizować projekt tj. na moduły funkcjonalne, bo wtedy jak chcesz dorzucić 'nowy ficzer' to tworzysz nowy moduł i nie zastanawiasz się 'do których katalogów wrzucać nowe pliki.
P-184520
tBane
Temat założony przez niniejszego użytkownika
» 2026-09-02 21:53:34
Ja wszystkie pliki z kodami wrzucam zawsze do głównego src, a potem je kataloguje względem zastosowania. :-)

Tutaj faktycznie mógłbym wrzucić skrypty potworków do src/monsters/ ale uznałem że dwa katalogi na te skrypty to za dużo :-)
P-184521
« 1 »
  Strona 1 z 1