•
우선 폰트가 어색하다. 항상 쓰던 d2coding으로 바꿔주자
•
커서 복사(다중입력커서)를 위한 Clone Caret을 설정 cmd+위아래
•
라인 복사 *아주 많이 쓰임 cmd+shift+아래
•
github에 매일 연습한 것을 기록하기 위해서 repository를 생성하고 remote repository와 연결한다.
•
아무것도 한것이 없는데 기본 파일들이 모두 추적되고 있다.
•
예전 프로젝트에서 계속 OS 정보와 각 팀원들의 시간 정보가 갱신되는 파일들이 추적되고 병합마다 충돌이나서 귀찮으면서도 끝까지 gitignore를 등록 안하다 마지막에 등록한 기억이 난다.
•
특히 gradle, idea 폴더들이 눈에띄는데 이번에는 이것들이 무조건 필요한지, 보통 어떤 것들을 gitignore에 등록해야 하는지 다른 프로젝트를 진행한 사람들의 gitignore를 검색해본다.
•
어떤 블로그에서 이러한 파일들을 gitignore로 등록했다. 이 사람만의 충돌을 위한것일까? 왜 추적을 금지 했을까? 윈도우즈 유저와 협업을 진행했던것 같다.
### Windows #### Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msm
*.msp
# Windows shortcuts
*.lnk
### Intellij #### Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio
*.iml
## Directory-based project format:
.idea/
logs/
# if you remove the above rule, at least ignore the following:# User-specific stuff:# .idea/workspace.xml# .idea/issues.xml# .idea/dictionaries# Sensitive or high-churn files:# .idea/dataSources.ids# .idea/dataSources.xml# .idea/sqlDataSources.xml# .idea/dynamic.xml# .idea/uiDesigner.xml# Gradle:# .idea/gradle.xml# .idea/libraries# Mongo Explorer plugin:# .idea/mongoSettings.xml## File-based project format:
*.ipr
*.iws
## Plugin-specific files:# IntelliJ
/out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# Eclipse
.metadata/
RemoteSystemTempFiles/
.project
# JIRA plugin
atlassian-ide-plugin.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
### node ####kr.wisestone.owl/src/main/webapp/bower_components/
*.log
### Java ###
*.class
target/
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.war
*.ear
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
### Node ###
node_modules/
Shell
복사
•
정답은 gitignore.io라는 웹사이트를 사용한 것이었다.
•
나도 MacOS, Windows, Java, Gradle, IntelliJ 라는 키워드로 .gitignore를 작성했다.
# Created by https://www.toptal.com/developers/gitignore/api/java,gradle,intellij,windows,macos# Edit at https://www.toptal.com/developers/gitignore?templates=java,gradle,intellij,windows,macos### Intellij #### Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf
# AWS User-specific
.idea/**/aws.xml
# Generated files
.idea/**/contentModel.xml
# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml
# Gradle
.idea/**/gradle.xml
.idea/**/libraries
# Gradle and Maven with auto-import# When using Gradle or Maven with auto-import, you should exclude module files,# since they will be recreated, and may cause churn. Uncomment if using# auto-import.# .idea/artifacts# .idea/compiler.xml# .idea/jarRepositories.xml# .idea/modules.xml# .idea/*.iml# .idea/modules# *.iml# *.ipr# CMake
cmake-build-*/
# Mongo Explorer plugin
.idea/**/mongoSettings.xml
# File-based project format
*.iws
# IntelliJ
out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# SonarLint plugin
.idea/sonarlint/
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
# Editor-based Rest Client
.idea/httpRequests
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
### Intellij Patch #### Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721# *.iml# modules.xml# .idea/misc.xml# *.ipr# Sonarlint plugin# https://plugins.jetbrains.com/plugin/7973-sonarlint
.idea/**/sonarlint/
# SonarQube Plugin# https://plugins.jetbrains.com/plugin/7238-sonarqube-community-plugin
.idea/**/sonarIssues.xml
# Markdown Navigator plugin# https://plugins.jetbrains.com/plugin/7896-markdown-navigator-enhanced
.idea/**/markdown-navigator.xml
.idea/**/markdown-navigator-enh.xml
.idea/**/markdown-navigator/
# Cache file creation bug# See https://youtrack.jetbrains.com/issue/JBR-2257
.idea/$CACHE_FILE$
# CodeStream plugin# https://plugins.jetbrains.com/plugin/12206-codestream
.idea/codestream.xml
# Azure Toolkit for IntelliJ plugin# https://plugins.jetbrains.com/plugin/8053-azure-toolkit-for-intellij
.idea/**/azureSettings.xml
### Java #### Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
replay_pid*
### macOS #### General
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
### macOS Patch #### iCloud generated files
*.icloud
### Windows #### Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
# Dump file
*.stackdump
# Folder config file
[Dd]esktop.ini
# Recycle Bin used on file shares$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp
# Windows shortcuts
*.lnk
### Gradle ###
.gradle
**/build/
!src/**/build/
# Ignore Gradle GUI config
gradle-app.setting
# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar
# Avoid ignore Gradle wrappper properties
!gradle-wrapper.properties
# Cache of project
.gradletasknamecache
# Eclipse Gradle plugin generated files# Eclipse Core
.project
# JDT-specific (Eclipse Java Development Tools)
.classpath
### Gradle Patch #### Java heap dump
*.hprof
# End of https://www.toptal.com/developers/gitignore/api/java,gradle,intellij,windows,macos
Shell
복사
•
이제 이정도면 git으로 이동해도 될 파일이라고 믿어봐야 할 듯하다. 해당 부분은 추후 협업 시 충돌이 발생하거나, 오히려 필수적인 부분이 .gitignore에 등록 됬는지 추가 확인이 필요하다.
•
자 이제 커밋을 하려는데, 예전부터 커밋 메시지를 거의 메모장처럼 사용하고 있었다.
•
다음 글에 올바른 커밋 메시지 작성법을 정리하고 나도 그렇게 작성하려고 한다!