원격 테마 컴포넌트를 조정하는 새로운 최적의 방법은 무엇인가요?

몇 달 전(아니면 그보다 더 오래전일 수도 있습니다. 저는 항상 최신 정보를 따라가지는 못합니다)에는 로컬 테마 컴포넌트뿐만 아니라 모든 테마 컴포넌트의 HTML/CSS를 수정할 수 있었습니다.

그때는 단순히 "이 컴포넌트가 업데이트되면 수정 내용이 사라질 수 있으니 주의하세요"라는 경고 알림만 뜨는 수준이었죠.

솔직히 말하면, 저는 그 당시의 작동 방식을 그리워합니다. (저는 포럼 관리자로서 제 행동을 잘 알고 있으며, 재적용해야 할 모든 수정 사항을 정리해 둔 파일도 가지고 있습니다. 번거롭기는 하지만 적어도 제가 직접 할 수 있는 일이었으니까요.)

이제는 더 이상 그렇게 할 수 없습니다. 포럼 관리자가 수정할 수 있는 테마 컴포넌트는 Discourse에 직접 작성한 것, 또는 해당 git 저장소에 직접 접근할 수 있는 컴포넌트뿐입니다.

따라서 제 질문은 다음과 같습니다:
만약 다른 테마 컴포넌트를 정말로 수정해야 한다면, 가장 좋은 방법은 무엇일까요?

  • 원본 git 저장소를 새로운 git 저장소로 포크(Fork)하는 방법?
    • 장점: 원본 TC 업데이트를 관리하기가 비교적 쉽습니다.
    • 단점: 이전보다 훨씬 더 번거롭습니다.
  • 파일을 새로운 로컬 테마 컴포넌트에 복사/붙여넣기하는 방법?
    • 장점: 번거로움이 적습니다(모든 작업이 한 곳에서 이루어지므로).
    • 단점: 일부 파일은 관리자 패널을 통해 추가할 수 없다고 생각합니다.
    • 단점: 원본 TC 업데이트 추적이 어렵습니다.
  • 원본 컴포넌트를 유지하면서 원본을 수정하는 새로운 컴포넌트를 추가하는 방법?
    • 장점: 자동으로 업데이트됩니다.
    • 장점: 비교적 안전합니다.
    • 단점: 일부 수정(예: CSS)에는 효과가 있지만 모든 경우에 적용되지는 않습니다(핸들바(Handlebars) 컴포넌트를 수정하려면 전체를 복사/붙여넣기해야 하므로).
    • 단점: 위젯 수정은 가능하지만 어렵습니다(적어도 위젯에 몇 줄의 코드를 추가하는 방법을 찾지 못했습니다).

여러분의 제안은 무엇일까요?

제가 말씀드린 내용을 이해하셨을 것 같습니다. 커스터마이징을 위해 직접 테마 컴포넌트를 추가하는 것이 가장 좋은 해결책일 것 같습니다.

“원본 git 저장소를 새로운 git 저장소로 포크한다”와 “원본 컴포넌트를 유지하면서 원본을 수정하는 새로운 컴포넌트를 추가한다” 중 하나를 선택하겠습니다. 진행하려는 변경 사항이 상당하다면 컴포넌트 저장소를 포크하는 것이 좋습니다. 하지만 단순한 스타일 변경이라면 오버라이드만 포함하는 새로운 컴포넌트를 만드는 것이 적절합니다.