2013-04-09 14 views
2

나는 내가하는 모든 새로운 프로젝트에 대한 상용구를 사용하고있다. 그러나 내가 상용구에서 작성한 커밋은 새로운 프로젝트에 적용됩니다. 내가 어떻게 한 가지 커밋에 모든 것을 포함하고 오래된 커밋 기록을 제거하는 "Intial commit"을 단순히 갖게 될까?push git 커밋을 하나의 것으로 바꾼다

답변

0

사용은 N

N은 하나 .. 에 융합 그리고 힘 푸시을 수행 할 커밋의 수입니다 -i HEAD ~을 리베이스이

자식에 대한 명령을 리베이스 ..

+0

감사합니다. 정확히 내가 필요한 것. –

0

"git: how to squash the first two commits?"질문을 따르고 새 Repo에서 N 커밋을 스쿼시 할 수 있습니다.
script is here은 새로운 repo 기록에서 유지하려는 나머지 커밋을 재생하면서 첫 번째 커밋을 스쿼시 할 수 있습니다.

git clone boilerplaterepo newrepo 
# apply the script for git reset --soft $1 everything 

git reset --soft 용액을 사용하고, "Practical uses of git reset --soft?"의 하나의 예이다.


루트 커밋을 아래로 리베이스하기 위해 (이 수동 단계를 포함하는 등, 실용성) --interactive REBASE, don't forget the --root option (git 1.7.12)을 기반으로하는 솔루션을합니다.

git rebase -i --root 
git push -f