✔️git 홈페이지에서 64-bit 용 설치
✔️ 설치과정중 아래 체크만 체크하고 나머지 다 default로 설치진행.
r2com@DESKTOP-DD3FU43 MINGW64 ~
$ mkdir git-test && cd $_
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test
$ echo "Hello World" > README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test
$ cat README.txt
Hello World
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test
$
✔️ github 로그인 - 리포지디토리 - new
✔️이름 : test-dev - 생성
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test
$ git init
Initialized empty Git repository in C:/Users/r2com/git-test/.git/
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ ls
README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ ls -al
total 21
drwxr-xr-x 1 r2com 197121 0 Jul 26 09:35 ./
drwxr-xr-x 1 r2com 197121 0 Jul 26 09:33 ../
drwxr-xr-x 1 r2com 197121 0 Jul 26 09:35 .git/ ## init 통해 생성
-rw-r--r-- 1 r2com 197121 12 Jul 26 09:33 README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git config --global user.name "mangji"
warning: user.name has multiple values
error: cannot overwrite multiple values with a single value
Use a regexp, --add or --replace-all to change user.name.
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git config --global user.email "test@example.com"
warning: user.email has multiple values
error: cannot overwrite multiple values with a single value
Use a regexp, --add or --replace-all to change user.email.
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git add README.txt
warning: in the working copy of 'README.txt', LF will be replaced by CRLF the next time Git touches it
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git commit -m "add-site" ## 작업한 내용 남기기
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ echo "Aloha" >> README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ cat README>txt
cat: README: No such file or directory
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git add README.txt
warning: in the working copy of 'README.txt', LF will be replaced by CRLF the next time Git touches it
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git commit -m "add update"
[master ed57f25] add update
1 file changed, 1 insertion(+)
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git log
commit ed57f25df216e78723744459346790b20d143fcf (HEAD -> master)
Author: == <==>
Date: Tue Jul 26 09:47:22 2022 +0900
add update
commit 4bf982a466fbfdcc96da593dd928117fbbd39bb2
Author: == <==>
Date: Tue Jul 26 09:42:19 2022 +0900
add-site
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ cat README.txt
Hello World
Aloha
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git checkout 4bf982a466fbfdcc96da593dd928117fbbd39bb2
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test ((4bf982a...))
$ cat README.txt
Hello World
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test ((4bf982a...)) ## 다시 가장 최근 버전으로
$ git checkout -
Previous HEAD position was 4bf982a add-site
Switched to branch 'master'
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ cat README.txt
Hello World
Aloha
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git remote add origin https://github.com/mangjini/test-dev.git
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git push origin master
https://github.com/settings/profile
맨 하단 developer settings - personal access tokens - generate new token
note : test-dev
repo체크
generate token
token 복사해서 붙여넣고 sign in
sign in 하면 push 됨.
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git push origin master
Enumerating objects: 6, done.
Counting objects: 100% (6/6), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (6/6), 409 bytes | 409.00 KiB/s, done.
Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/mangjini/test-dev.git
* [new branch] master -> master
github 리포지토리에서 확인 가능해짐.
r2com@DESKTOP-DD3FU43 MINGW64 ~
$ git clone https://github.com/mangjini/test-dev.git
Cloning into 'test-dev'...
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 6 (delta 0), reused 6 (delta 0), pack-reused 0
Receiving objects: 100% (6/6), done.
r2com@DESKTOP-DD3FU43 MINGW64 ~
$ cd test-dev
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-dev (master)
$ ls
README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-dev (master)
$ cat README.txt
Hello World
Aloha
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-dev (master)
$ echo "NIHAO" >> README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-dev (master)
$ git add .
warning: in the working copy of 'README.txt', LF will be replaced by CRLF the next time Git touches it
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-dev (master)
$ git commit -m "add list"
[master 2c55c2d] add list
1 file changed, 1 insertion(+)
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-dev (master)
$ git push origin master
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Writing objects: 100% (3/3), 243 bytes | 243.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/mangjini/test-dev.git
ed57f25..2c55c2d master -> master
다른사용자 (git-test[A])가 확인하기
r2com@DESKTOP-DD3FU43 MINGW64 ~
$ cd git-test
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ cat README.txt
Hello World
Aloha
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git pull origin master ## 니하오 추가된 것 가져오기.
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 3 (delta 0), reused 3 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 223 bytes | 13.00 KiB/s, done.
From https://github.com/mangjini/test-dev
* branch master -> FETCH_HEAD
ed57f25..2c55c2d master -> origin/master
Updating ed57f25..2c55c2d
Fast-forward
README.txt | 1 +
1 file changed, 1 insertion(+)
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ cat README.txt
Hello World
Aloha
NIHAO
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git rm README.txt
rm 'README.txt'
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git commit -m "remove README.txt"
[master 5dd0c11] remove README.txt
1 file changed, 3 deletions(-)
delete mode 100644 README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git push origin master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (2/2), 182 bytes | 182.00 KiB/s, done.
Total 2 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/mangjini/test-dev.git
2c55c2d..5dd0c11 master -> master
삭제 확인
✔️centos7 버츄얼 박스에 올리기
서버 IP : 192.168.4.211 -> mobaxterm으로 진입, 아래 명령어 실행 ( gitlab 설치)
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
EXTERNAL_URL="http://192.168.4.211" yum install -y gitlab-ce
✔️gitlab설치 완료되면 웹브라우저에서 ip 로 접근 가능.
✔️아래 명령어 통해서 패스워드 확인하고 로그인 하기.
cat /etc/gitlab/initial_root_password # 패스워드 수정
✔️패스워드 변경하기
✔️ 사용자 만들기
root에서 로그아웃 - register now
✔️사용자 승인하기
root로 로그인 - 메뉴
✔️ 사용자 로그인
root 로그아웃하고 생성해둔 사용자로 로그인, role은 그냥 설문조사 편하게 기입.
✔️ 프로젝트 생성
a사용자-local
[root@localhost ~]# yum install git -y
[root@localhost ~]# mkdir git-test && cd $_
[root@localhost git-test]# ls -al
total 0
drwxr-xr-x 2 root root 6 Jul 26 12:05 .
dr-xr-x---. 4 root root 163 Jul 26 12:05 ..
[root@localhost git-test]# echo "Hello World" > README.txt
[root@localhost git-test]# git init
Initialized empty Git repository in /root/git-test/.git/
[root@localhost git-test]# git config --global user.email "test@example.com"
[root@localhost git-test]# git config --global user.name "mangji"
[root@localhost git-test]# git add README.txt
[root@localhost git-test]# git commit -m "add site"
[root@localhost git-test]# echo "Aloha" >> README.txt
[root@localhost git-test]# git add README.txt
[root@localhost git-test]# git commit -m "add update"
[root@localhost git-test]# git log
commit bf8dc53a40f2557c7b559c4fd6569c269d3a13f2
Author: mangji <test@example.com>
Date: Tue Jul 26 12:13:41 2022 +0900
add update
commit db621ebd231d5c8fcc38d81e55626cd447a9cc8f
Author: mangji <test@example.com>
Date: Tue Jul 26 12:11:17 2022 +0900
add site
[root@localhost git-test]# cat README.txt
Hello World
Aloha
[root@localhost git-test]# git checkout db621e ## 앞에 5글자정도만 해도 체크아웃 가능.
[root@localhost git-test]# cat README.txt
Hello World
[root@localhost git-test]# git checkout - #가장 최신버전으로 원복
[root@localhost git-test]# cat README.txt
Hello World
Aloha
✔️local에서 벗어나 원격 저장소 이용하기
1) protection 설정
2) 명령어 진행
[root@localhost git-test]# git remote add origin http://192.168.4.211/kmj/test-procject.git
[root@localhost git-test]# git branch -M main
[root@localhost git-test]# git push -uf origin main
✔️ B사용자
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ cd ~
r2com@DESKTOP-DD3FU43 MINGW64 ~
$ git clone http://192.168.4.211/kmj/test-procject.git
Cloning into 'test-procject'...
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (6/6), done.
r2com@DESKTOP-DD3FU43 MINGW64 ~
$ cd test-procject/
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-procject (main)
$ ls
README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-procject (main)
$ cat README.txt
Hello World
Aloha
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-procject (main)
$ echo "NIHAO" >> README.txt
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-procject (main)
$ git add README.txt
warning: in the working copy of 'README.txt', LF will be replaced by CRLF the next time Git touches it
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-procject (main)
$ git commit -m "add list"
[main ff5bd3b] add list
1 file changed, 1 insertion(+)
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-procject (main)
$ git branch -M main
r2com@DESKTOP-DD3FU43 MINGW64 ~/test-procject (main)
$ git push -uf origin main
a 사용자
[root@localhost git-test]# cat README.txt
Hello World
Aloha
[root@localhost git-test]# git pull origin main
[root@localhost git-test]# cat README.txt
Hello World
Aloha
NIHAO
[root@localhost git-test]# git rm README.txt
rm 'README.txt'
[root@localhost git-test]# git commit -m "remove README.txt"
[main 28e0244] remove README.txt
1 file changed, 3 deletions(-)
delete mode 100644 README.txt
[root@localhost git-test]# git push origin main
Username for 'http://192.168.4.211': kmj
Password for 'http://kmj@192.168.4.211':
Counting objects: 3, done.
Writing objects: 100% (2/2), 196 bytes | 0 bytes/s, done.
Total 2 (delta 0), reused 0 (delta 0)
To http://192.168.4.211/kmj/test-procject.git
ff5bd3b..28e0244 main -> main
->삭제완료
📙✔️✏️📢⭐️📌
r2com@DESKTOP-DD3FU43 MINGW64 ~/git-test (master)
$ git push origin master
remote: Permission to mangjini/test-dev.git denied to JJ
fatal: unable to access 'https://github.com/mangjini/test-dev.git/': The requested URL returned error: 403
[root@localhost git-test]# exit