palpatine은 JSON 형식의 구성 파일을 지원합니다.

반사



지난 5주 동안 저는 정적 사이트 생성기palpatine에 새 기능을 천천히 추가했습니다. 이번주에도 팰퍼틴에 새로운 기능이 생겼습니다. 그러나 그뿐만 아니라 이번 주에는 GitHub에서 제공해야 하는 더 흥미로운 기능인 remotes을 통한 추적 분기 및 테스트 사용에 대해서도 배웠습니다. 지금까지 약 1년 동안 GitHub를 사용했지만 분기 및 원격 추적에 대해 전혀 몰랐습니다. 이것은 매우 흥미로웠지만 직관적으로 입력하기 위해 근육 기억을 개발하는 데 약간의 시간이 걸렸습니다.

끊임없는 협업



이번 주에는 저와 연구실 파트너 사이에 많은 협력 노력이 있었습니다. 우리의 임무는 사용자가 SSG 옵션을 명령줄 인수로 전달하는 대신 JSON 형식의 구성 파일에서 모든 SSG 옵션을 지정할 수 있도록 –config 기능을 추가하는 것이었습니다. 예를 들어 다음 구성 파일 ./ssg-config.json을 고려하십시오.

{
  "input": "./site",
  "output": "./build",
  "stylesheet": "https://cdn.jsdelivr.net/npm/water.css@2/out/water.css",
  "lang": "tr"
}


나는 이 기능을 구현하기 위해 파트너의 정적 사이트 생성기rwar에서 작업했고 그녀는 내 정적 사이트 생성기인 palpatine에서 작업했습니다. 저는 Python으로 작성된 rwar에서 이 작업을 쉽게 수행할 수 있었습니다. 그런데 C++로 작성된 팰퍼틴에서는 이 기능을 구현하기가 훨씬 어렵다는 것을 깨달았습니다. Samina는 손상된 Cmake 구성에 대한 도움과 nlohmann/json 라이브러리 통합에 도움을 요청하기 위해 여러 번 연락했습니다.

초안 끌어오기 요청 만들기



지금까지 풀 요청으로만 작업했지만 draft pull requests 로는 작업하지 않았습니다. 저장소를 분기하고 모든 변경 사항을 푸시할 분기를 만든 후 초안 풀 요청을 만들었습니다. 기능이 완료될 때까지 여기에 모든 커밋을 추가하고 저장소 소유자를 위해 검토할 준비가 된 것으로 표시했습니다.

Git 가져오기 및 추적 분기



rwar의 --config 기능에 대한 드래프트 풀 리퀘스트를 생성하는 동안 동일한 작업을 수행했습니다. --config 기능이 palpatine에 대해 검토할 준비가 된 경우. 다음 단계를 수행했습니다.

$ git remote add <name-of-remote> <https://git-url-of-other-student-fork.git>


그 다음에....

$ git fetch <name-of-remote>


가져오기는 원격 저장소에서 최신 변경 사항을 가져오기 위해 수행되었습니다.
프로세스에서 로컬 추적 분기를 업데이트하여 변경 사항을 확인하려면 항상 다음을 수행할 수 있습니다.

$ git checkout <issue-name>
$ git pull <name-of-remote> <issue-name>


모든 변경 사항이 만족스럽게 완료되었을 때 검토한 후 작업을 메인 브랜치에 병합했고 이로 인해 풀 요청이 자동으로 종료되었습니다.

다음 시간을 위해...



추적 지점과 리모컨을 사용할 수 있는 많은 기회가 있을 것이라고 확신합니다. 현재 저의 초점은 Hacktoberfest에 최대한 기여하고 그곳에서 새로 배운 GitHub 기술을 사용하는 것입니다.

유용한 링크




기부자
SSG
문제
홍보
병합된 커밋


saminarp
palpatine
issue #11
pull #12
c08c63a

batunpc
rwar
issue #11
pull #12
f3551c0

좋은 웹페이지 즐겨찾기