Git-변경 수행
Jerry는 저장소를 복제하고 기본 문자열 작업을 구현하기로 결정합니다. 그래서 그는 string.c 파일을 만듭니다. 내용을 추가하면 string.c는 다음과 같습니다.
#include <stdio.h>
int my_strlen(char *s)
{
char *p = s;
while (*p)
++p;
return (p - s);
}
int main(void)
{
int i;
char *s[] =
{
"Git tutorials",
"Tutorials Point"
};
for (i = 0; i < 2; ++i)
printf("string lenght of %s = %d\n", s[i], my_strlen(s[i]));
return 0;
}
그는 자신의 코드를 컴파일하고 테스트했으며 모든 것이 잘 작동합니다. 이제 그는 이러한 변경 사항을 저장소에 안전하게 추가 할 수 있습니다.
Git 추가 작업은 스테이징 영역에 파일을 추가합니다.
[jerry@CentOS project]$ git status -s
?? string
?? string.c
[jerry@CentOS project]$ git add string.c
Git은 파일 이름 앞에 물음표를 표시합니다. 분명히 이러한 파일은 Git의 일부가 아니므로 Git은 이러한 파일로 무엇을해야하는지 알지 못합니다. 이것이 Git이 파일 이름 앞에 물음표를 표시하는 이유입니다.
Jerry가 파일을 숨김 영역에 추가했습니다. git status 명령은 준비 영역에있는 파일을 표시합니다.
[jerry@CentOS project]$ git status -s
A string.c
?? string
변경 사항을 커밋하기 위해 그는 git commit 명령 다음에 –m 옵션을 사용했습니다. -m 옵션을 생략하면. Git은 여러 줄 커밋 메시지를 작성할 수있는 텍스트 편집기를 엽니 다.
[jerry@CentOS project]$ git commit -m 'Implemented my_strlen function'
위의 명령은 다음 결과를 생성합니다-
[master cbe1249] Implemented my_strlen function
1 files changed, 24 insertions(+), 0 deletions(-)
create mode 100644 string.c
로그 세부 정보를 확인한 후 git log 명령을 실행합니다. 커밋 ID, 커밋 작성자, 커밋 날짜 및 커밋 날짜와 함께 모든 커밋의 정보를 표시합니다.SHA-1 커밋의 해시.
[jerry@CentOS project]$ git log
위의 명령은 다음 결과를 생성합니다-
commit cbe1249b140dad24b2c35b15cc7e26a6f02d2277
Author: Jerry Mouse <[email protected]>
Date: Wed Sep 11 08:05:26 2013 +0530
Implemented my_strlen function
commit 19ae20683fc460db7d127cf201a1429523b0e319
Author: Tom Cat <[email protected]>
Date: Wed Sep 11 07:32:56 2013 +0530
Initial commit