I wonder why my code gets messy after I push it to GitHub.
For example, when I indent members of some class, so they are all aligned it looks nice in Visual Studio and ugly in GitHub.
Here is an example:
And how it looks in GitHub:
I wonder why my code gets messy after I push it to GitHub.
For example, when I indent members of some class, so they are all aligned it looks nice in Visual Studio and ugly in GitHub.
Here is an example:
And how it looks in GitHub:
First, make sure all your indent as actual tabs, not spaces.
Second, by default, GitHub would display tabs as 8 characters.
So try and see the same GitHub page, but adding at the end of its URL: ?ts=4
That is:
https://gist.github.com/razzorflame/ef776ddef260608bc1a8799090af629e?ts=4
Or... configure your Visual Studio to use a tab width of 8 (not ideal though).
As mentioned here, you can add a .editorconfig (like this one for gist) with:
root = true
[*]
end_of_line = lf
insert_final_newline = true
# Matches multiple files with brace expansion notation
[*.{js,jsx,html,sass}]
charset = utf-8
indent_style = tab
indent_size = 4
trim_trailing_whitespace = true
[*.md]
trim_trailing_whitespace = false
Then GitHub should display tabs using the right width (4).
As an illustration of the use of .editorconfig, Git itself, with Git 2.26 (Q1 2020), tells .editorconfig that in this project, *.txt files are indented with tabs.
See commit 7047f75 (05 Jan 2020) by Hans Jerry Illikainen (illikainen).
(Merged by Junio C Hamano -- gitster -- in commit 34246a1, 30 Jan 2020)
editorconfig: indent text files with tabsSigned-off-by: Hans Jerry Illikainen
Previously, the
.editorconfigdid not specify an indentation style for text files.However, a quick look for indentation-like spacing suggest that tabs are more common for documentation:
$ git grep -Pe '^ {4}' -- '*.txt' |wc -l 2683 $ git grep -Pe '^\t' -- '*.txt' |wc -l 14011Note that there are a lot of files that indent list continuations (and other things) with a single space -- if the first search was made without the fixed quantifier the result would look very different.
However, the result does correspond with my anecdotal experience when editing Git documentation.This commit adds
*.txtto.editorconfigas an extension that should be indented with tabs.