GitHub에서 refs에서 찾을 수 없는 약속이 사라졌는지 여부
총결산
비밀번호 등 파일을 제출할 때 처리에서'git rm는 안 되고git filter-branch는 사용한다'는 보도를 여러 번 보았다.내가 알고 싶은 사람은 알지만 보충은 한다.
준비
암호가 포함된 파일 밀어넣기
$ echo "secret password" > password.txt
$ git add password.txt
$ git commit -m "add password.txt"
[master 661598e] add password.txt
1 file changed, 1 insertion(+)
create mode 100644 password.txt
$ git rev-parse HEAD
661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
$ git push origin master
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 305 bytes | 305.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:yoichi/test_fetch_sha1.git
43fe66d..661598e master -> master
filter-branch force-push
$ git filter-branch --tree-filter "rm -f password.txt"
Rewrite 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1 (2/2) (0 seconds passed, remaining 0 predicted)
Ref 'refs/heads/master' was rewritten
$ git push origin master --force
Enumerating objects: 1, done.
Counting objects: 100% (1/1), done.
Writing objects: 100% (1/1), 196 bytes | 196.00 KiB/s, done.
Total 1 (delta 0), reused 0 (delta 0)
To github.com:yoichi/test_fetch_sha1.git
+ 661598e...7568dd0 master -> master (forced update)
다시 clone checkout
다시 클론을 만들 때refs에서 추적할 수 없는 제출을 가져오지 않습니다.하지만 이는 원격으로 사라지는 근거가 될 수 없다.$ git clone [email protected]:yoichi/test_fetch_sha1.git
Cloning into 'test_fetch_sha1'...
remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 4 (delta 1), reused 3 (delta 0), pack-reused 0
Receiving objects: 100% (4/4), done.
Resolving deltas: 100% (1/1), done.
$ git checkout 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
fatal: reference is not a tree: 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
fetch sha1
git fetch에서 SHA1의 값을 주더라도 팝업됩니다.하지만 이는 원격으로 사라지는 근거가 될 수 없다.$ git fetch origin 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
error: Server does not allow request for unadvertised object 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
GitHub의 commit 페이지 열기
아, 봤어.
그럼 나 어떡하지?
이력서에서 삭제하는 것은 부차적인 것이다. 잘못된 메시지 자체를 사용할 수 없는 것으로 바꾸는 것이 첫 번째다.
다음 도움말의 "Warning"섹션을 참조하십시오.
https://help.github.com/en/articles/removing-sensitive-data-from-a-repository
Reference
이 문제에 관하여(GitHub에서 refs에서 찾을 수 없는 약속이 사라졌는지 여부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yoichi22/items/d318d31201d3634fb172
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ echo "secret password" > password.txt
$ git add password.txt
$ git commit -m "add password.txt"
[master 661598e] add password.txt
1 file changed, 1 insertion(+)
create mode 100644 password.txt
$ git rev-parse HEAD
661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
$ git push origin master
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 305 bytes | 305.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:yoichi/test_fetch_sha1.git
43fe66d..661598e master -> master
$ git filter-branch --tree-filter "rm -f password.txt"
Rewrite 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1 (2/2) (0 seconds passed, remaining 0 predicted)
Ref 'refs/heads/master' was rewritten
$ git push origin master --force
Enumerating objects: 1, done.
Counting objects: 100% (1/1), done.
Writing objects: 100% (1/1), 196 bytes | 196.00 KiB/s, done.
Total 1 (delta 0), reused 0 (delta 0)
To github.com:yoichi/test_fetch_sha1.git
+ 661598e...7568dd0 master -> master (forced update)
다시 클론을 만들 때refs에서 추적할 수 없는 제출을 가져오지 않습니다.하지만 이는 원격으로 사라지는 근거가 될 수 없다.
$ git clone [email protected]:yoichi/test_fetch_sha1.git
Cloning into 'test_fetch_sha1'...
remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 4 (delta 1), reused 3 (delta 0), pack-reused 0
Receiving objects: 100% (4/4), done.
Resolving deltas: 100% (1/1), done.
$ git checkout 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
fatal: reference is not a tree: 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
fetch sha1
git fetch에서 SHA1의 값을 주더라도 팝업됩니다.하지만 이는 원격으로 사라지는 근거가 될 수 없다.$ git fetch origin 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
error: Server does not allow request for unadvertised object 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
GitHub의 commit 페이지 열기
아, 봤어.
그럼 나 어떡하지?
이력서에서 삭제하는 것은 부차적인 것이다. 잘못된 메시지 자체를 사용할 수 없는 것으로 바꾸는 것이 첫 번째다.
다음 도움말의 "Warning"섹션을 참조하십시오.
https://help.github.com/en/articles/removing-sensitive-data-from-a-repository
Reference
이 문제에 관하여(GitHub에서 refs에서 찾을 수 없는 약속이 사라졌는지 여부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yoichi22/items/d318d31201d3634fb172
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ git fetch origin 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
error: Server does not allow request for unadvertised object 661598e05d5e5faef7c1fc75a4f3c5a2c88368a1
아, 봤어.
그럼 나 어떡하지?
이력서에서 삭제하는 것은 부차적인 것이다. 잘못된 메시지 자체를 사용할 수 없는 것으로 바꾸는 것이 첫 번째다.
다음 도움말의 "Warning"섹션을 참조하십시오.
https://help.github.com/en/articles/removing-sensitive-data-from-a-repository
Reference
이 문제에 관하여(GitHub에서 refs에서 찾을 수 없는 약속이 사라졌는지 여부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yoichi22/items/d318d31201d3634fb172
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(GitHub에서 refs에서 찾을 수 없는 약속이 사라졌는지 여부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yoichi22/items/d318d31201d3634fb172텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)