반응형

라즈베리파이4 apache(아파치)에 무료 SSL 인증서 적용하기

 

아파치를 설치하고 접속하면 기본적으로 http로 접속하게 됩니다.

여러가지 이유가 있겠지만 https를 사용하기 위해서는 SSL 인증서를 적용해야 합니다.

상용SSL을 발급해주는 곳도 있지만 이번 포스팅에서는 무료 SSL 인증서를 다운받고 적용하는 방법에 대해 설명드리겠습니다.

 

라즈레비파이에 certbot, python3-certbot-apache 두개의 프로그램을 설치해주어야 합니다.

그러기전에 먼저 sudo apt update, sudo apt upgrade를 합니다.

 

 

다음은 apt list | grep certbot 명령어로 리스트 목록에 설치할 두 프로그램이 존재하는지 확인합니다.

 

 

이제 프로그램을 설치합니다.  sudo apt-get install certbot python3-certbot-apache

 

 

설치가 완료되면 아파치를 잠시 스톱해야 합니다. 서트봇도 80포트를 사용하기 때문입니다.

sudo systemctl stop apache2.service

 

 

이제 서트봇을 실행합니다. sudo certbot --standalone -d www.내도메인주소.net certonly

그럼 처음으로 인증서 만료시 안내를 받을 이메일 주소를 입력하라고 합니다.

(인증서 만료는 90일이며 만료전에 갱신을 해준다면 계속해서 사용할 수 있습니다)

 

 

그 다음 약관에 동의하냐는 물음에는 동의를 합니다. A

 

 

다음은 마케팅에 이메일을 사용해도 되는지 묻는데 No를 합니다.

 

 

그럼 키가 발행됐다고 나오며 위치를 알려줍니다.

위치는 /etc/letsencrypt/live/내도메인주소.net/ 폴더이며 폴더안에 fullchain.pem, privkey.pem 파일이 있습니다.

 

 

다음은 아파치의 sites-enabled 폴더로 이동합니다.

cd /etc/apache2/sites-enabled/

 

 

그리고 sites-available 폴더에 있는 default-ssl.conf 파일을 심볼링크로 가져옵니다.

sudo ln -s ../sites-available/default-ssl.conf ./default-ssl.conf

(또는 간단한 아파치 명령어인 sudo a2ensite default-ssl.conf 로도 심볼링크가 생성됩니다. sudo a2dissite default-ssl.conf 명령어는 반대로 심볼링크를 삭제합니다.)

 

 

이제 vi 편집기로 default-ssl.conf 파일에 들어가면 VirtualHost 443 이라고 되어 있는 https 포트 설정을 합니다. sudo vi default-ssl.conf

  • DocumentRoot  웹문서가 들어있는 폴더 위치

  • SSLEngine on

  • SSLCertificateFile fullchain.pem 위치

  • SSLCertificateKeyFile privkey.pem 위치

 

 

다음은 ssl을 활성화 합니다. sudo a2enmod ssl

(참고로 "sudo a2enmod 모둘명" 명령은 아파치폴더 내에 있는 mods-available 폴더에 모듈을 mods-enabled 폴더로 심볼링크 해주는 명령어입니다. 반대로 비활성화 할 경우는 "sudo a2dismod 모듈명" 명령어로 합니다. 심볼링크가 삭제됩니다.)

 

ssl 모듈 추가됨

 

이제 아파치를 다시 시작합니다. sudo systemctl start apache2.service

 

 

마지막으로 공유기를 통해 라즈베리파이를 사용하고 있다면 이전 포스팅을 참고하여 포트포워딩을 해줘야 합니다.

(https:도메인주소 입력으로 -> 공유기 443포트로 들어오는 패킷을 -> 라즈베리파이 443포트로 포트 포워딩)

reddb.tistory.com/99

 

라즈베리파이4 WordPress 워드프레스 외부에서 접속 (워드프레스 6편)

라즈베리파이4 WordPress 워드프레스 외부에서 접속 (워드프레스 6편) 앞선 포스팅에서 워드프레스 설치는 완료되었습니다. 이제는 외부에서 사람들이 내 홈페이지에 접속할 수 있게 하는 방법과

reddb.tistory.com

 

포트포워딩까지 완료 되었다면 이제 브라우저를 통해 접속해 봅니다. 앞에 열쇠모양이 생겼을 겁니다.

 

 

certbot으로 발급받은 인증서는 유효기간이 90일 입니다.

인증서를 갱신하고 싶다면 아파치를 종료하고, sudo certbot renew 명령어를 입력하고, 다시 아파치를 시작하면됩니다.

다만 갱신은 만료 2주전부터 가능하다고 합니다.(혹자는 1달전부터 가능했다고 합니다.)

만료가 다가오면 위에서 certbot으로 키 생성시 입력한 메일 주소로 갱신안내 메일이 옵니다.

만약 기한이 많이 남아있는데도 갱신을 할 경우 아래와 같은 에러가 날 수 있습니다.

 

저는 2달마다 자동으로 인증서를 강제로(--force-renew) 재발급 받기 위해 크론탭을 이용하겠습니다.

먼저 su - 명령어로 루트로 진입합니다. (root 비밀번호를 지정하지 않으신분은 이번기회에 지정해주세요)

그리고 crontab -e 명령어로 root의 크론탭에 진입합니다.

 

그후 0 5 1 */2 * /usr/bin/certbot renew --force-renew --pre-hook "/bin/systemctl stop apache2.service" --post-hook "/bin/systemctl start apache2.service" 를 제일 아래라인에 추가해줍니다. (짧은 기간동안 너무 자주 재발급받으면 에러가납니다.)

 

추가로, http://도메인 접속시 https://도메인주소로 리다이렉트를 시키고 싶으시다면 아래와 같이 진행해야합니다.

rewrite 모듈을 사용하기 위해 sudo a2enmod rewrite 명령어를 실행합니다.

rewrite 모듈 추가됨

 

다음은 /etc/apache2/sites-enabled 폴더로 이동한 후 접속시 리다이렉트 시키고 싶은 주소의 conf 파일을 vi로 아래와 같아 수정합니다.

(저는 001-test.conf에 있는 80포트(http) ServerName주소로 들어오는 요청을 https로 리다이렉트 시키겠습니다.)

 

이제 아파치를 다시 시작합니다. sudo systemctl start apache2.service

 

 

라즈베리파이 전체보기

 

'라즈베리파이' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

 

반응형
반응형

(PYTHON)파이썬 람다(lambda) 함수 만들기

 

파이썬에서 함수를 만드는 기본 명령어는 def 문입니다. 하지만 간단한 함수는 lambda를 이용하면 보다 빠르게 만들수 있습니다.

 

곱셉을 리턴하는 함수 vs 람다(lambda)

# def 함수식 곱셈

def 함수(i):
    return i * 3

print(함수(12))	# 12*3이 리턴되서 돌아오고 프린트 됨
# lambda식 곱셈

y = lambda x : x * 3	# y에 12*3이 할당됨

print(y(12))	# y = lambda 12 : 12 * 3을 호출하고 프린트함

 

 

문자열 슬라이싱 함수 vs 람다( lambda)

# 일반 문자열 슬라이싱

text1 = "123_456_789_10"
print(text1[:10])    #좌측부터 10개 출력

text2 = "abc_def_ghi_j"
print(text2[:10])    #좌측부터 10개 출력
# lambda식 문자열 슬라이싱

text1 = "123_456_789_10"
left10 = lambda x : x[:10]	# 람다 정의 : x의 좌측 10개를 left10 변수에 입력
print(left10(text1))	# text1 변수를 아규먼트로 람다 호출

text2 = "abc_def_ghi_j"
print(left10(text2))	# text2 변수를 아규먼트로 람다 호출




원화를 달러로 변환하기 함수 vs 람다(lambda) (1000원 -> 1달러)

# def 함수식 원화 -> 달러 계산 (1000원-> 1달러)

def exchange(won):
    return won * 0.001

print(exchange(1000))	# 1출력
print(exchange(1500))	# 1.5출력
print(exchange(2500))	# 2.5출력
# lambda식 원화 -> 달러 계산

exchange = lambda won : won * 0.001

print(exchange(1000))	# 1출력
print(exchange(1500))	# 1.5출력
print(exchange(2500))	# 2.5출력

 

(PYTHON)파이썬 전체보기

 

'(PYTHON)파이썬' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

 

반응형
반응형

(github)깃허브 - 비주얼 스튜디오 코드(Visual Studio Code)에서 깃 활용하기

 

이전 포스팅까지는 윈도우의 cmd를 통해 깃과 깃허브를 사용하는 방법에 대해서 포스팅했습니다.

이번 포스팅에서는 비주얼 스튜디오 코드(VS Code)에서 깃을 사용하는 방법에 대해서 포스팅하겠습니다.

 

비주얼 스튜디오 코드에서 깃 시작하기

먼저 git_test 폴더를 만들겠습니다.

 

다음은 비주얼 스튜디오 코드에서 git_test 폴더를 열어줍니다.

 

좌측에 탐색기 아이콘이 선택되어 있고 폴더명이 나오며 아무 파일도 없는 상태입니다.

3번째에 있는 소스제어 아이콘을 클릭합니다.

 

소스제어 버튼을 클릭 후 리포지토리 초기화를 클릭합니다. 이것은 폴더에서 git init 명령어를 실행하는 것과 같습니다.

 

이제 다시 git_test 폴더를 열어보면 깃이 생성된 것이 확인됩니다.

 

비주얼 스튜디오 코드에서 스테이지에 올리기 및 커밋하기

먼저 README.md 파일을 만들겠습니다.

탐색기 아이콘을 클릭하고 폴더명 옆에 새파일 아이콘을 클릭합니다.

 

파일명을 입력하고 우측 편집창에서 내용을 입력하고 저장(Ctrl+S)합니다.

파일명 우측에 U 마크는 untracked 파일이라고 알려주는 표시입니다.

 

이제 만든 파일을 스테이지에 올리겠습니다.

3번째 소스제어 아이콘을 보면 1이라는 숫자가 있습니다. 아이콘을 누르고 소스제어 창에 들어가면 변경 사항에 위에서 만든 README.md 파일이 나타납니다. 변경 내용 스테이징 버튼인 + 아이콘을 클릭합니다.

 

스테이징이 완료되면 스테이징된 변경 사항이 생깁니다.

README.md 파일에 마우스를 올리면 인덱스 추가 되었다고 알려줍니다.

README.md 파일 우측에 - 아이콘은 스테이징을 취소하는 아이콘입니다.

 

이제 스테이지 올린 README.md 파일을 커밋하겠습니다.

소스제어 창 위쪽에 있는 커밋 아이콘을 클릭합니다. (커밋 단축키: Ctrl+Enter)

 

커밋 메세지 입력창에 내용을 입력하고 Enter를 누릅니다.

 

커밋이 완료되면 스테이징된 변경 사항에 있던 README.md 파일이 사라집니다.

커밋 log를 확인하고 싶다면 ctrl+shift+` 키를 눌러 VS Code의 터미널창을 열고 git log 명령어를 입력합니다.

 

만약 스테이징이나 커밋을 취소하고 싶다면 보기 및 기타작업 아이콘을 누르고 원하는 메뉴를 찾아가서 간단히 클릭하여 취소할 수 있습니다.

 

 

원격저장소(Github)에 push 및 pull 하기

먼저 깃허브에 원격저장소를 만듭니다. 자세한 방법은 이전 포스팅을 참조바랍니다.

reddb.tistory.com/151

 

(github)깃허브 - 깃허브 가입하기 및 원격저장소 이용하기

(github)깃허브 - 깃허브 가입하기 및 원격저장소 이용하기 이전 포스팅까지는 git에 대해서 설명드렸습니다. 이번 포스팅부터는 github에 대해서 설명드리겠습니다. 깃허브 가입 및 원격저장소 생

reddb.tistory.com

 

저는 제 계정에 git_test.git으로 원격저장소를 하나 만들었습니다.

주소는 https://github.com/본인계정명/git_test.git 입니다.

 

비주얼 스튜디오 코드에서 터미널을 열어줍니다.(단축키 Ctrl+Shift+`)

터미널창에 git remote add origin https://github.com/본인계정명/git_test.git 명령어를 입력합니다.

그리고 git remote -v 명령어로 원격저장소를 확인합니다.

 

이제 원격저장소(github)로 푸시하겠습니다.

소스제어 창에서 보기 및 기타작업 아이콘을 클릭하고 다음으로 푸시를 클릭합니다.

 

처음 푸시할때는 알림창이 뜹니다. 확인을 클릭합니다.

 

깃허브 계정을 묻는 창이 뜨면 계정과 패스워드를 입력하고 로그인합니다.

 

Visual Studio Code에서 깃허브를 사용하여 로그인하기를 허용합니다.

 

브라우저가 열리고 깃허브사이트에 접속됩니다.

깃버흐에 액세스 할 수 있도록 VS Code에 권한 부여를 할건지를 묻습니다. Continue를 클릭합니다.

 

다음으로 VSCode용 깃허브에서 추가권한 요청을 한다고 나옵니다.

Authorize github 버튼을 클릭합니다.

 

성공했다고 뜹니다. 그리고 VS Code에서 확장 URI를 열도록 허용하는지 물으면 열기를 클릭합니다.

 

브라우저의 원격저장공간(깃허브)을 새로고침하면 README.md 파일이 push 된것이 확인됩니다.

 

두번째 커밋을 위해 편집창에서 README.md 파일에 내용을 추가 입력 및 저장합니다.

내용을 추가 입력 저장하면 소스제어 - 변경 사항 목록에 README.md 파일이 나타나며 파일수정이 있었다는 M 표시가 나타납니다.

 

이제 소스제어에 있는 README.md 파일을 클릭해봅니다.

어떠한 변경사항이 있었는지를 양쪽으로 분활하여 보여줍니다.

 

두번째 커밋을 하기 위해 메세지를 입력하고 커밋 아이콘을 클릭 합니다.

한번 커밋한 파일이라면 두번째 커밋부터는 스테이징과 커밋을 한번에 진행 할 수 있습니다.

 

스테이징을 하고 커밋하겠냐고 묻는 창이 나오면 예를 클릭합니다.

 

이제 변경 사항에 README.md 파일이 사라졌습니다.

원격저장소에 두번째 커밋을 푸시하겠습니다.

 

원격저장소(깃허브)를 새로고침해보면 두번째 커밋이 올라간 것이 확인 됩니다.

 

원격저장소의 커밋을 pull 해보겠습니다.

현재는 지역저장소와 원격저장소가 동기화되어 있어 변경사항을 만들어줘야 합니다.

깃허브 사이트내에서 README.md 파일을 수정하고 커밋을 하나 생성하겠습니다.

자세한 사항은 이전 포스팅을 참조하세요

reddb.tistory.com/151

 

(github)깃허브 - 깃허브 가입하기 및 원격저장소 이용하기

(github)깃허브 - 깃허브 가입하기 및 원격저장소 이용하기 이전 포스팅까지는 git에 대해서 설명드렸습니다. 이번 포스팅부터는 github에 대해서 설명드리겠습니다. 깃허브 가입 및 원격저장소 생

reddb.tistory.com

 

저는 아래와 같이 내용을 수정하고 커밋하였습니다.

 

현재 VS Code 편집창에 README.md 파일을 보면 두번째 커밋에 대한 내용까지 존재합니다.

이제 VS Code에서 풀을 합니다. 

 

풀이 완료 되면 VS Code 편집창에 README.md 파일에 세번째 커밋 내용이 나타납니다.

원격저장소에서 커밋한 3번째 커밋을 pull 한 것입니다.

 

[github]깃허브 전체보기

 

'(github)깃허브' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

 

반응형
반응형

(github)깃허브 - 깃허브를 이용한 협업방법

 

이전 포스팅에서는 깃허브를 가입하고 원격저장소를 이용하는 방법에 대해서 설명드렸습니다.

이번 포스팅에서는 이전포스팅에서 만든 깃허브 자료를 여러 컴퓨터에 복제하고 함께 사용 및 동기화하여, 협업에 사용하는 방법을 설명드리겠습니다.

 

다른 컴퓨터에서 원격 저장소 복제하기 (git clone)

먼저 두개의 폴더를 만들겠습니다. 깃은 폴더별로 만들어지기 때문에 두개의 폴더를 각각 집PC, 사무실PC로 인식하고 보셔도 됩니다.

이제 두 폴더에서 git clone 깃허브주소 명령어를 실행하여 깃을 복제하겠습니다.

주소는 깃허브의 Code 버튼을 누르면 나옵니다.

 

git_home과 git_office 폴더를 열어보면 폴더안에 test-1이라는 폴더가 생깁니다.

이제 두 폴더에 파일, 깃로그, 원격저장소도 복제 된 것을 확인합니다.

 

 

집에서 추가 커밋하고 회사에서 내려받기(동기화)

이제 git_home\test-1 폴더에서 home.txt 파일을 만들고 1열에 "home commit AAA"를 입력 저장하겠습니다.

git add home.txt 명령으로 스테이징을 하고, git commit -m "home commit" 명령으로 커밋을 추가한 후 git push 명령으로 깃허브에 올리겠습니다.

 

깃허브 홈페이지를 새로고침 해서 새로운 커밋이 올라온 것을 확인합니다.

 

이제 git_office\test-1 폴더에서 내려받기를 통해 동기화를 해보겠습니다.

현재 git_office\test-1 폴더에는 home.txt 파일도 없고, 추가된 home commit도 없는 상태입니다.

 

이제 git pull 명령을 입력합니다.

폴더에 커밋 로그가 추가되고, home.txt 파일도 생긴 것을 확인합니다.(동기화 완료)

 

원격저장소 변경사항 확인 후 병합하기(git fetch)

만약 다수가 팀작업을 할때 타인이 수정한 원격저장소 최종 커밋을 내려받기(pull)을 하면 나의 PC 폴더가 그대로 동기화 되버립니다.

어떤 변화가 있는지 확인 후 동기화를 하고 싶을 때 사용할 수 있는 방법이 git fetch 명령입니다.

git fetch는 커밋 정보를 FETCH_HEAD라는 브랜치로 가져오지만 merge는 하지 않습니다.

 

먼저 git_office\test-1 폴더에 office.txt 파일을 만들고 1열에 "office commit BBB"를 입력 및 저장합니다.

그리고 git add office.txt 명령으로 스테이징, git commit -m "office commit" 명령으로 커밋, git push 명령으로 깃허브에 업로드합니다.

 

이제 git_home\test-1 폴더에서 git fetch 명령을 입력합니다.

 

그리고 git log --oneline --branches --graph 명령어로 확인 해보면 추카된 커밋과 브랜치는 보이지 않습니다.

폴더를 확인해 봐도 office.txt 파일은 보이지 않습니다.

 

하지만 git status 명령어로 상태를 확인하면 현재브랜치가 origin/master에 비해 1개의 커밋이 뒤쳐저 있다고 나옵니다. 그리고 git pull 명령으로 업데이트 하라고 알려줍니다.

 

git checkout FETCH_HEAD 명령으로 FETCH_HEAD 브랜치로 이동합니다.

git log --oneline 명령으로 office 커밋이 동기화된 상태를 확인합니다. 

git_office\test-1 폴더를 보면 office 파일도 존재합니다.

 

fetch한 내용의 확인이 끝나면 브랜치를 합쳐야 합니다.

첫번째 방법은 git pull 명령어로 내려받을 수도 있습니다. (위에서 이미 설명드렸음)

두번째 방법은 master 브랜치에서 merge 명령으로 브랜치를 합치는 방법입니다. 이 방법으로 합쳐보겠습니다.

 

git checkout master 명령으로 마스터 브랜치로 이동 후, git merge FETCH_HEAD 명령으로 브랜치를 합칩니다.

 

 

내PC(지역저장소) 브랜치를 깃허브(원격저장소)에 push 하고, 깃허브에서 병합(merge) 하기

git_home\test-1 폴더에서 sub 브랜치를 만들고 원격저장소로 push 하겠습니다.

(항상 작업 전에 동기화를 해주는게 좋습니다. git pull 명령어를 입력합니다.)

 

git checkout -b sub 명령어로 sub 브랜치를 만듦과 동시에 checkout으로 브랜치를 이동합니다. (-b 옵션은 뒤에 나오는 브랜치를 만들면서 이동하는 옵션입니다.)

 

git_home\test-1 폴더에 sub.txt 파일을 생성하고 1열에 "sub commit AAA" 입력 및 저장합니다.

git add sub.txt 명령으로 스테이징, git commit -m "sub commit" 명령으로 커밋을 합니다.

 

이제 원격저장소로 push를 해야합니다. 지역저장소 sub 브랜치에서 원격저장소 sub 브랜치로 push 하겠습니다.

git push origin sub 명령을 입력합니다.

 

깃허브 홈페이지에서 새로고침을 해보면 브랜치가 2개로 확인됩니다.

하지만 마스터 브랜치에서는 sub.txt 파일이 보이지 않습니다.

 

마스터 를 클릭하고 sub 브랜치로 스위치를 하면 sub.txt 파일이 나오는 것을 확인 할 수 있습니다.

 

이제 깃허브에서 풀리퀘스트(pull request)를 통해 병합을 진행하겠습니다. 2 branches를 클릭합니다.

 

Your branches의 New pull request를 클릭합니다.

 

남길 코멘트를 적고 Create pull request를 클릭합니다. 그리고 Pull requests 내용을 확인 합니다.

 

내용에 문제가 없다면 Merge pull request를 클릭하고 Confirm merge도 클릭합니다.

 

< > Code를 클릭하면 master 브랜치에도 sub.txt 파일이 보일 것입니다. sub에서 Merge pull request 됐다는 내용도 보입니다.

 

다시 2branches를 클릭해봅니다.

 

브랜치가 병합된 상태라고 알려줍니다. 누가 병합을 했는지도 알려줍니다.

 

[github]깃허브 전체보기

 

'(github)깃허브' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

 

반응형
반응형

(github)깃허브 - 깃허브 가입하기 및 원격저장소 이용하기

 

이전 포스팅까지는 git에 대해서 설명드렸습니다.

이번 포스팅부터는 github에 대해서 설명드리겠습니다.

 

깃허브 가입 및 원격저장소 생성하기

깃허브에 가입하기 위해 아래 사이트에 접속을 합니다.

github.com/join?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F&source=header-home

 

GitHub: Where the world builds software

GitHub is where over 56 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and feat...

github.com

 

깃허브 홈페이지 우측 상단에 sign up 버튼을 클릭합니다.

 

이름, Email주소, 비밀번호(문자8자+숫자1자 이상)을 입력합니다.

비정기적인 소식을 이메일로 받고 싶다면 체크박스를 체크합니다.

내가 인간인지를 확인하는 퀴즈를 맞추고나면 녹색 체크 이미지로 변경됩니다.

그리고 Create account 버튼을 클릭해서 계정을 생성합니다.

 

다음으로는 설문조사를 진행합니다.

 

이메일 주소를 확인하라는 안내가 나옵니다.

본인 이메일로 들어가서 Verify email address 버튼을 눌러서 인증하면 회원가입이 완료됩니다.

 

이제 깃허브 사이트에 로그인 후 우측 상단에 + 버튼을 클릭합니다.

그리고 New repository를 클릭하여 새로운 원격저장소를 만들어 줍니다.

 

저장소 이름을 작성하고, 설명부분도 작성합니다.

저장소를 공개할지(Public) 비공개할지(Private)도 설정하고 Create repository 버튼을 클릭합니다.

Add a README file은 소개와 설명을 닮은 README파일을 자동으로 생성해주는 옵션입니다.

Add .gitignore는 어떤 언어와 관련된 파일들을 gitignore 파일에 지정할지를 선택하는 옵션입니다.

Add a License는 원하는 라이선스를 지정할 수 있습니다.

 

저장소 주소가 생성된 것을 확인할 수 있습니다.

주소는 "github.com/내아이디/저장소이름" 으로 만들어집니다.

 

 

깃의 저장소를 깃허브 원격저장소로 연결하기

먼저 git으로 지역저장소를 만들어 줍니다.

저는 이전 포스팅과 마찬가지로 git_test 폴더에서 작업을 하겠습니다. (git init)

 

폴더안에 test.txt 파일을 생성하고 1열에 "github test AAA" 입력하고 저장합니다.

 

git add test.txt 명령어로 스테이징을 하고, git commit -m "github test AAA" 명령어로 커밋을 합니다.

 

이제 깃허브에 만들어 놓은 test-1 원격저장소로 연결하겠습니다.

원격 저장소를 연결하는 명령어는 git remote add origin 깃허브원격저장소주소 입니다.

이 명령은 깃에게 원격저장소 주소를 origin이라는 단어로 추가해 줍니다.

(깃의 기본 브랜치가 master이듯이, 기본 원격저장소는 origin을 사용합니다)

git remote -v 명령어를 입력하면 지정한 원격저장소를 확인할 수 있습니다.

 

 

원격저장소에 파일 올리기(push)

이제 커밋된 자료를 원격저장소(origin)로 올리겠습니다

git push -u origin master 명령을 입력합니다. 원격저장소(origin)의 master 브랜치로 올리는 명령입니다.

(-u 옵션은 지역저장소의 브랜치를 원격저장소의 master 브랜치에 연결하기 위한 것으로 처음 한번만 사용합니다)

 

푸시가 끝나면 웹브라우저로 깃허브 저장소로 들어가서 새로고침을 합니다.

위에서 만든 파일과 깃정보가 제대로 올라간 것을 확인 합니다.

 

우측에 있는 1 commits를 눌러보면 지역저장소에서 커밋했던 내용과 똑같이 올라온 것을 확인할 수 있습니다.

 

이후에 추가로 하는 push는 좀 더 쉽게 가능합니다.

test.txt파일 2열에 "github test BBB"를 추가로 입력 저장합니다. git commit -am "github test BBB" 명령어로 커밋을 합니다.

 

이제 원격저장소(origin)의 master 브랜치로 push를 하겠습니다.

이번에는 간단하게 git push 명령어만 입력하면 push가 됩니다.

 

깃허브가 접속되어 있는 웹브라우저를 다시 새로고침해서 확인해 봅니다.

우측 상단에 2 commits도 확인해 봅니다.

 

 

깃허브 사이트에서 직접 커밋하는 방법

깃허브 사이트에 내에서 새로운 파일을 추가하고 사이트 내에서 커밋을 해보겠습니다.

먼저 Add file을 클릭 후 Create new file을 클릭합니다.

 

파일 이름과 내용을 입력합니다.

 

 

브라우저 화면의 아래로 내려가서 master 브랜치에 Commit new file을 클릭합니다.

(기본적인 커밋 메세지가 입력되어 있습니다. 수정이 가능합니다.)

 

커밋이 완료되면 아래처럼 커밋한 내용을 보여줍니다.

우측에 3commits를 클릭하고 커밋 내용도 확인을 합니다.

 

Verified(확인됨) 버튼은 깃허브에서 커밋을 하는 경우 생성됩니다.

확인된 깃허브의 키를 이용하여 서명되었음을 알려줍니다.

 

원격저장소에 파일 내려받기(pull)

먼저 현재 상태를 확인 합니다.

git remote -v 명령어로 원격저장소를 확인합니다.

git log --oneline 명령어로 커밋되어 있는 로그를 확인합니다.

 

이제 위에서 원격저장소인 깃허브 홈페이지에서 커밋한 "made_in_github" 파일을 git pull origin master 명령어로 내려받아 보겠습니다.

그리고 git log --oneline 명령어로 확인하면 커밋이 추가된 것을 확인할 수 있습니다.

 

이제 git_test 폴더를 확인해 보면 made_in_github 파일이 내려받기(pull) 된것을 확인 할 수 있습니다.

 

다음 포스팅에서는 깃허브를 이용하여 집과 사무실의 각 폴더를 같은 (git)상태로 동기화 하는 방법에 대해서 설명드리겠습니다.

 

[github]깃허브 전체보기

 

'(github)깃허브' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

 

반응형