답변:
사인 오프는 Linux 커널과 다른 프로젝트에 패치를 가져 오기위한 요구 사항이지만 대부분의 프로젝트는 실제로이를 사용하지 않습니다.
그것은의 여파로 소개 된 SCO 소송 , (그리고 SCO에서 저작권 침해의 다른 비난 A와, 실제로 법원에 찍어 본적 대부분의) 원산지 개발자 인증서 . 문제의 패치를 만들었 음을 증명하거나, 귀하가 알고있는 한도 내에서 적절한 오픈 소스 라이센스하에 작성되었거나 다른 사람이 귀하에게 제공했음을 증명하는 데 사용됩니다. 그 조건에 따라 다른. 이를 통해 문제의 코드의 저작권 상태를 책임지는 일련의 사람들을 구성하여 적절한 무료 소프트웨어 (오픈 소스) 라이센스로 배포되지 않은 저작권이있는 코드가 커널에 포함되지 않도록 할 수 있습니다.
사인 오프는 커밋 메시지의 끝에있는 라인으로, 누가 커밋의 작성자인지를 인증합니다. 주요 목적은 특히 패치를 사용하여 누가 무엇을했는지 추적하는 것입니다.
커밋 예 :
Add tests for the payment processor.
Signed-off-by: Humpty Dumpty <humpty.dumpty@example.com>
오픈 소스 프로젝트에 사용되는 경우 사용자 실명을 포함해야합니다.
지점 관리자가 패치를 병합하기 위해 패치를 약간 수정해야하는 경우 제출자에게 다시 정의하도록 요청할 수 있지만 비생산적입니다. 그는 코드를 조정하고 마지막에 사인을 내려서 원래 작성자가 여전히 패치에 대한 크레딧을 얻도록 할 수 있습니다.
Add tests for the payment processor.
Signed-off-by: Humpty Dumpty <humpty.dumpty@example.com>
[Project Maintainer: Renamed test methods according to naming convention.]
Signed-off-by: Project Maintainer <project.maintainer@example.com>
출처 : http://gerrit.googlecode.com/svn/documentation/2.0/user-signedoffby.html
author
git commit 필드에 의해 중복되지 않습니까? 난 항상 별도 있었다 그 이유는 생각 author
과 committer
필드. 저자는 패치 작성자이고 커미터는 패치를 적용하고 푸시 한 사람입니다.
git 2.7.1 (2016 년 2 월 )은 David A. Wheeler ( )에 의해 커밋 b2c150d (2016 년 1 월 5 일 )를 분명히합니다 . ( Junio C Hamano 에 의해 합병 -- 커밋 7aae9ba , 2016 년 2 월 5 일)david-a-wheeler
gitster
git commit
매뉴얼 페이지에 포함 된 내용 :
-s::
--signoff::
Signed-off-by
커밋 로그 메시지 끝에 커미터별로 줄을 추가 합니다.
사인 오프의 의미는 프로젝트에 따라 다르지만 일반적으로 커미터가 동일한 라이센스로이 작업을 제출할 권한이 있으며 개발자 원산지 증명서에 동의한다는 것을 증명합니다 ( 자세한 내용 은 https://developercertificate.org 참조 ).
설명하는 설명서 확장
--signoff
--signoff
의미가 무엇인지 자세하게 설명하기 위해 다양한 문서 (man page) 파일을 수정하십시오 .이것은 "에서 영감을받은 : LWN 기사 '는 DCO에 겸손한 제안 바텀' (원산지 개발자 인증서) paulj는 지적"
내가 DCO와 함께이 문제가 있다는 것입니다 은 "추가
-s
자식이 정말로 당신도 DCO 들었 의미하지 않는다 커밋에"인수를 ( 사람이 페이지는 DCO의 아무 곳이나 언급을하지 않습니다 ), 실제로 본 적이 될까요 않았다.git commit
그렇다면 어떻게 "
signed-off-by
" 의 존재가 발신자가 DCO에 동의하고 커밋했음을 의미 할 수 있습니까? 사실과 함께 SOB가없는 패치에 대한 목록의 "응답을 다시 보내서signed-off-by
커밋 할 수 있습니다 "라는 답장을 보았습니다 .git의 문서를 확장하면 개발자가
--signoff
그것을 사용할 때 이해했다고 쉽게 주장 할 수 있습니다.
이 사인 오프는 현재 (Git 2.15.x / 2.16, 2018 년 1 분기)에도 사용할 수 git pull
있습니다.
W. Trevor King ( )의 commit 3a4d2c7 (2017 년 10 월 12 일)을 참조하십시오 . (의해 병합 - Junio C 하마노 - 에 fb4cd88 커밋 2,017 06 십일)wking
gitster
pull
:--signoff/--no-signoff
"git merge
"로 전달병합은 걸릴 수
--signoff
있지만 풀이--signoff
내려 가지 않으면 사용하기가 불편합니다. 'pull
'를 사용하여 옵션을 가져 와서 전달하십시오.
이 질문에 대한 좋은 답변이 있습니다. 더 광범위한 답변을 추가하려고 시도합니다. 즉, 현재 이러한 종류의 라인 / 헤더 / 트레일러가 무엇에 관한 것인지에 대해 설명하겠습니다. 특히 사인 오프 헤더에 대해서는별로 중요하지 않습니다 (유일한 헤더는 아닙니다).
“sign-off”(↑ 2)와 같은 헤더 또는 트레일러 (↑ 1)는 현재 Git 및 Linux와 같은 프로젝트에서 커밋을 위해 효과적으로 구조화 된 메타 데이터입니다. 이것들은 모두 메시지 본문의 "자유 형식"(구조화되지 않은) 부분 다음에 커밋 메시지의 끝에 추가됩니다. 이들은 일반적으로 콜론과 공백 ( ) 으로 구분되는 토큰-값 (또는 키-값 ) 쌍 :␣
입니다.
앞서 언급했듯이“사인 오프”는 현재 실무에서 유일한 예고편이 아닙니다. 예를 들어 “Dirty Cow”와 관련된 이 commit을 참조하십시오 .
mm: remove gup_flags FOLL_WRITE games from __get_user_pages()
This is an ancient bug that was actually attempted to be fixed once
(badly) by me eleven years ago in commit 4ceb5db9757a ("Fix
get_user_pages() race for write access") but that was then undone due to
problems on s390 by commit f33ea7f404e5 ("fix get_user_pages bug").
In the meantime, the s390 situation has long been fixed, and we can now
fix it by checking the pte_dirty() bit properly (and do it better). The
s390 dirty bit was implemented in abf09bed3cce ("s390/mm: implement
software dirty bits") which made it into v3.9. Earlier kernels will
have to look at the page state itself.
Also, the VM has become more scalable, and what used a purely
theoretical race back then has become easier to trigger.
To fix it, we introduce a new internal FOLL_COW flag to mark the "yes,
we already did a COW" rather than play racy games with FOLL_WRITE that
is very fundamental, and then use the pte dirty flag to validate that
the FOLL_COW flag is still valid.
Reported-and-tested-by: Phil "not Paul" Oester <kernel@linuxace.com>
Acked-by: Hugh Dickins <hughd@google.com>
Reviewed-by: Michal Hocko <mhocko@suse.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Kees Cook <keescook@chromium.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Willy Tarreau <w@1wt.eu>
Cc: Nick Piggin <npiggin@gmail.com>
Cc: Greg Thelen <gthelen@google.com>
Cc: stable@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
위의 "사인 오프"트레일러 외에 다음이 있습니다.
Gerrit와 같은 다른 프로젝트에는 자체 헤더와 관련 의미가 있습니다.
참조 : https://git.wiki.kernel.org/index.php/CommitMessageConventions
이 특정 메타 데이터에 대한 초기 동기가 일부 법적 문제 (다른 답변으로 판단) 였음에도 불구하고 이러한 메타 데이터의 실습은 저작권 체인을 형성하는 경우를 다루는 것 이상으로 진행되었습니다.
[↑ 1] : man git-interpret-trailers
[↑ 2] : 이들은 때때로 "sob"(초기)이라고도합니다.
Signed-off-by:
Linux 커널 프로젝트 (및 Git 프로젝트 자체)에 의해 커밋 메시지 라인에 할당 된 의미입니다 . 그러나 다른 프로젝트의 경우 프로젝트와 같이 프로젝트에 의미를 부여하지 않는 한 (예 : Linux의 SubmittingPatches 또는 Git의 SubmittingPatches 와 같은) 해당 라인은 의미가 없습니다 .