Kotlin 기반 Git 프로젝트입니다. 실제 git처럼 CLI에서 커맨드로 사용할 수 있습니다.
- 저장소 초기화:
./kgit.sh init - 파일 추가:
./kgit.sh add <파일명> - 트리 오브젝트 생성:
./kgit.sh write - 트리 구조 출력:
./kgit.sh ls <트리해시> - 커밋 오브젝트 생성:
./kgit.sh commit <트리해시> "커밋 메시지" - 오브젝트 내용 확인:
./kgit.sh cat pretty-print <오브젝트해시> - 태그 생성:
./kgit.sh tag <태그명> <커밋해시> "메시지"
-
jar 빌드
- jar 파일이 없으면
./kgit실행 시 자동으로 빌드됩니다. - 수동 빌드:
./gradlew shadowJar또는./gradlew jar
- jar 파일이 없으면
-
명령어 실행
- 예시:
./kgit init ./kgit add example.txt ./kgit write ./kgit ls <트리해시> ./kgit commit <트리해시> "커밋 메시지" ./kgit cat pretty-print <오브젝트해시> ./kgit tag v1.0 <커밋해시> "릴리즈 메시지"
- 예시:
src/main/kotlin: 주요 소스 코드object/,porcelain/,reference/,config/: git 내부 구조와 유사한 기능별 패키지command/: 명령어 처리 로직kgit: 실행 스크립트build.gradle.kts: 빌드 설정
- Kotlin (Java 17) 이상 필요
- Gradle 빌드 사용
.kgit폴더에 저장소 데이터가 저장됨

