EDU/codeIt
git reset --mixed, --soft 옵션
이앤지
2021. 11. 4. 20:43
팩토리얼 함수는
1부터 어떤 수 사이에 있는 모든 수들을 다 곱한 값을 알려주는 함수
(3! = 1*2*3 = 6)
# 예시1
def factorial(n):
if n == 1:
return n
else:
return n * factorial(n-1)
# 예시2
def factorial(n):
num = 1
while n >= 1:
num = num * n
n = n - 1
return num
위 함수를 각각 예시 1, 2로 각각 작성해서 add 후 commit 한 상황
git history를 보면 잘 나타나 있다.
그런데 처음 예시 1의 커밋 기록을 지우고 싶으면?
이전에 학습한 대로면 git reset을 해주면 된다.
git history를 보면 잘 리셋되있지만
--soft 옵션을 쓸경우는 아직 working directory에는 상태가 남아있음! 그래서 다시 add commit을 해준다.
원하던 대로 하나의 함수만 적용된 커밋 로그를 확인할 수 있다.
결과적으로 --mixed, --soft 옵션을 사용하면 여러 커밋을 하나의 커밋으로 만들 수 있다.