<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>sol_mi.log</title>
        <link>https://velog.io/</link>
        <description>고수가 되기까지</description>
        <lastBuildDate>Sun, 16 Jul 2023 06:46:49 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>sol_mi.log</title>
            <url>https://velog.velcdn.com/images/sol_mi/profile/835132e5-4007-4c9c-95f0-485800a045ee/image.jpg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. sol_mi.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/sol_mi" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[[CSS] 부모내에 자식 중앙 정렬하는 방법]]></title>
            <link>https://velog.io/@sol_mi/CSS-%EB%B6%80%EB%AA%A8%EB%82%B4%EC%97%90-%EC%9E%90%EC%8B%9D-%EC%A4%91%EC%95%99-%EC%A0%95%EB%A0%AC%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95</link>
            <guid>https://velog.io/@sol_mi/CSS-%EB%B6%80%EB%AA%A8%EB%82%B4%EC%97%90-%EC%9E%90%EC%8B%9D-%EC%A4%91%EC%95%99-%EC%A0%95%EB%A0%AC%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95</guid>
            <pubDate>Sun, 16 Jul 2023 06:46:49 GMT</pubDate>
            <description><![CDATA[<h2 id="1position-이용하기">1.position 이용하기</h2>
<p>1)
부모쪽에 position: relative;
자식쪽에 position: absolute;
이렇게 해야 부모를 기준으로 자식이 배치된다. position:relative;를 빼면 자식이 브라우저 창 기준으로 위치된다.</p>
<p>2)
자식쪽에 top:0; bottom:0; 등과 같이 어디가 top이고 어디가 bottom인지 지정해줘야 한다.</p>
<p>3)
margin: auto;를 통해 중앙에 위치시킬 수 있다.</p>
<p>!codepen[sol-_/embed/jOQzBOR?default-tab=css%2Cresult]</p>
<h2 id="2-flex-이용하기">2. flex 이용하기</h2>
<p>1) 부모쪽에 display: flex;</p>
<p>2) 부모쪽에서 자식 위치 지정
    align-items: center;
    justify-content: center;</p>
<p>!codepen[sol-_/embed/vYQRxOp?default-tab=css%2Cresult]</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[github 하면서 생겼던 에러 / 문제 해결법]]></title>
            <link>https://velog.io/@sol_mi/github-%ED%95%98%EB%A9%B4%EC%84%9C-%EC%83%9D%EA%B2%BC%EB%8D%98-%EC%97%90%EB%9F%AC-%EB%AC%B8%EC%A0%9C-%ED%95%B4%EA%B2%B0%EB%B2%95</link>
            <guid>https://velog.io/@sol_mi/github-%ED%95%98%EB%A9%B4%EC%84%9C-%EC%83%9D%EA%B2%BC%EB%8D%98-%EC%97%90%EB%9F%AC-%EB%AC%B8%EC%A0%9C-%ED%95%B4%EA%B2%B0%EB%B2%95</guid>
            <pubDate>Thu, 13 Jul 2023 13:33:07 GMT</pubDate>
            <description><![CDATA[<h3 id="1-pull할때-merge에러">1. pull할때 merge에러</h3>
<p>(feat. You have divergent branches and need to specify how to reconcile them.)
<img src="https://velog.velcdn.com/images/sol_mi/post/89719e0c-2401-4074-926f-30d368b5fecc/image.png" alt="">
pull = fetch + merge 
이 에러창은 fetch는 정상적으로 작동됐지만 merge를 하며 문제가 생겼다는 것을 의미한다.</p>
<p>--no-ff를 통해 non-fastforward방식을 사용하게 해서 해결할 수 있다.</p>
<p><img src="https://velog.velcdn.com/images/sol_mi/post/dd2cf8de-10d2-46c0-abaf-d857c6ada1ed/image.png" alt=""></p>
<pre><code>git pull origin main --no-ff</code></pre><br/>

<h3 id="2-버전관리하면-안되는-파일인데-이미-add-commit을-했다면">2. 버전관리하면 안되는 파일인데 이미 add, commit을 했다면!</h3>
<p>.gitignore에 넣어야하는데 깜빡했다면?</p>
<pre><code>git rm -r --cached .</code></pre><p>임시저장소에서 파일이 삭제되고, 이제 .gitignore 가 제대로 작동하게 된다.
<br/></p>
<h3 id="3-fatal-not-a-git-repository-or-any-of-the-parent-dicrectories">3. fatal: not a git repository (or any of the parent dicrectories)</h3>
<p><img src="https://velog.velcdn.com/images/sol_mi/post/0eaf9dbb-73d1-4c69-b998-31a94131254e/image.png" alt="">
아주아주 간단한 문제이다!
작업중인 폴더 위치를 확인하자 :D</p>
<pre><code>cd 폴더명</code></pre>]]></description>
        </item>
        <item>
            <title><![CDATA[Branch 이론]]></title>
            <link>https://velog.io/@sol_mi/Branch-%EC%9D%B4%EB%A1%A0</link>
            <guid>https://velog.io/@sol_mi/Branch-%EC%9D%B4%EB%A1%A0</guid>
            <pubDate>Wed, 12 Jul 2023 17:25:15 GMT</pubDate>
            <description><![CDATA[<h4 id="협업-실습--repo에서-가져와-branch에서-수정하고-pull-request-보내기">협업 실습 : repo에서 가져와 branch에서 수정하고 pull request 보내기</h4>
<ol>
<li>git clone</li>
<li>git branch 브랜치명</li>
<li>git switch 브랜치명 (또는 2,3번 대신에 git switch -c 브랜치명)</li>
<li>내용 수정 및 저장</li>
<li>git add . </li>
<li>git commit -m&quot;커밋내용&quot;</li>
<li>git push origin 브랜치명</li>
</ol>
<h1 id="branch">branch</h1>
<ul>
<li>현재 작업 중인 내용 유지하면서 파일과 커밋 기록을 별도로 관리하고자 할 때 사용</li>
<li>분기하면 그때부터는 커밋 기록이 완전히 별도로 관리됨</li>
</ul>
<p>개념적인 부분을 자세히 공부하고 싶다면 <a href="https://inpa.tistory.com/entry/GIT-%E2%9A%A1%EF%B8%8F-%EA%B9%83-Branch-%EC%A0%95%EB%A6%AC-branch-checkout-merge-rebase">여기</a>를 참고하자
(브랜치 용어정리, checkout, switch, merge, rebase, conflict)</p>
<h3 id="명령어-참고">명령어 참고</h3>
<ul>
<li><p>branch 목록 보는 명령어들</p>
<pre><code>  git branch
  git branch --list
  git branch -a
  git branch -all</code></pre></li>
<li><p>branch 생성과 동시에 이동</p>
<pre><code>  git switch -c 브랜치명
  git checkout -b 브랜치명</code></pre></li>
<li><p>충돌
같은 줄이어도 기존 데이터를 건드리지 않고 추가하는 것은 상관없다</p>
</li>
<li><p>초기화 (git 관리 상황 지우기)
: git init 이전으로 되돌아간다.</p>
<pre><code>rmdir/ /s /q .git (윈도우용)
rm -rf .git (윈도우 -깃배쉬)</code></pre></li>
<li><p>삭제</p>
<pre><code>git branch -D 브랜치명</code></pre></li>
<li><p>그래프 형태로 커밋 기록 보는 명령어</p>
<pre><code>  git log --graph --decorate --oneline</code></pre></li>
<li><p>가지치기 (원격 저장소 github에 없는 거 삭제. 동기화과정, github에서 삭제된 repo를 반영.)</p>
<pre><code>  git fetch --prune
</code></pre></li>
</ul>
<pre><code>


### Fast-forward
&gt; - Fast-forward 란?
커밋기록을 땡겨오기 때문에분기된 커밋기록이 아니라 일자로 된 커밋기록이 생긴다!

장점: 분기점이 남지 않기 때문에 커밋 기록을 더 직관적으로 볼 수 있다
단점: 머지했다는 기록도, 분기점도 없다. 

#### 기록을 남기고 싶다면 어떻게 해야할까?
fastforward쓰지 말라는 뜻</code></pre><p>git merge develop --no-ff</p>
<pre><code>- --no-ff 옵션
: 기능 분기에 대한 명확한 개념을 원할 때 유용
: fastforward를 금지시킴


### Rebase
- no fast-forward 형태인 것을 fast-forward형태로 바꾸기</code></pre><pre><code>git rebase</code></pre><pre><code>
&lt;aside&gt;
💡 rebase 는 정확히 말하면 병합을 위한 것이 아니라, 커밋 히스토리를 정렬하기 위한 명령어. 이미 병합이 된 브랜치가 있더라도, 거기서 rebase 를 하면 커밋 히스토리를 다시 정렬할 수 있다.
&lt;/aside&gt;
&lt;br/&gt;
&lt;aside&gt;
💡 rebase 는 커밋 이력을 단순히 관리하고 싶을 때 사용하는 명령어이고, merge 는 변경 이력을 모두 남기고 싶을 때 사용하는 명령어. 커밋 이력을 남기는 것이 중요하기 때문에 보통은 merge 만을 사용.
&lt;/aside&gt;

### Pull
&gt; **pull 
= fetch(원격 저장소 내용가져오기) + merge(그 내용을 로컬 저장소에 머지)**

- pull할때도 병합 방식을 지정할 수 있다.(--ff 또는 --no-ff)
- 만약 merge하고 싶지 않다면 fetch만 사용하면 된다!
</code></pre>]]></description>
        </item>
        <item>
            <title><![CDATA[[깃헙에서 lfs 포함 파일 내려받기] git clone vs zip download]]></title>
            <link>https://velog.io/@sol_mi/%EA%B9%83%ED%97%99%EC%97%90%EC%84%9C-%ED%8C%8C%EC%9D%BC-%EB%82%B4%EB%A0%A4%EB%B0%9B%EA%B8%B0-git-clone-vs-zip-download</link>
            <guid>https://velog.io/@sol_mi/%EA%B9%83%ED%97%99%EC%97%90%EC%84%9C-%ED%8C%8C%EC%9D%BC-%EB%82%B4%EB%A0%A4%EB%B0%9B%EA%B8%B0-git-clone-vs-zip-download</guid>
            <pubDate>Wed, 12 Jul 2023 14:34:23 GMT</pubDate>
            <description><![CDATA[<h3 id="git-clone-명령어를-통해-github에서-받아온-파일과-github에서-zip파일로-받아온-파일은-다르다">Git clone 명령어를 통해 github에서 받아온 파일과 github에서 zip파일로 받아온 파일은 다르다!</h3>
<p>노트북을 통해 github에 올려뒀던 유니티 프로젝트를 데스크탑에서 받아볼 때 발견했던 사실이다.
<br/></p>
<h4 id="1-zip을-통해-받아왔을-때">1) zip을 통해 받아왔을 때</h4>
<p>(&#39;Yourworld&#39;게임 내 화면)
<img src="https://velog.velcdn.com/images/sol_mi/post/3f5589d4-d898-4ff0-84e4-ce4eb56b67a2/image.png" alt="">
마우스 클릭도 안되고, asset들도 사라지고 여러모로 망가진 모습이다..
<br/></p>
<h4 id="2-git-bash에서-git-clone해서-받아왔을-때">2) git bash에서 git clone해서 받아왔을 때</h4>
<p>(&#39;Yourworld&#39;게임 내 화면)
<img src="https://velog.velcdn.com/images/sol_mi/post/e617ef0f-7223-4111-bb34-98056ba279a0/image.png" alt="">
정상적으로 작동하는 것을 확인할 수 있다.</p>
<blockquote>
<p>게임 플레이를 해보고 싶으시다면 아래 링크들을 참고해주세요! 관심 감사드립니다 :D</p>
</blockquote>
<p>1) 다운로드 
(git clone을 통해 내려받아야한다는 것을 잊지말자!)
<a href="https://github.com/SOL-MI/YourWorld">https://github.com/SOL-MI/YourWorld</a>
2) 웹에서 플레이
<a href="https://sol-mi.itch.io/yourworld">https://sol-mi.itch.io/yourworld</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[대용량 파일 git에 업로드하기]]></title>
            <link>https://velog.io/@sol_mi/%EB%8C%80%EC%9A%A9%EB%9F%89-%ED%8C%8C%EC%9D%BC-git%EC%97%90-%EC%97%85%EB%A1%9C%EB%93%9C%ED%95%98%EA%B8%B0</link>
            <guid>https://velog.io/@sol_mi/%EB%8C%80%EC%9A%A9%EB%9F%89-%ED%8C%8C%EC%9D%BC-git%EC%97%90-%EC%97%85%EB%A1%9C%EB%93%9C%ED%95%98%EA%B8%B0</guid>
            <pubDate>Wed, 12 Jul 2023 12:09:46 GMT</pubDate>
            <description><![CDATA[<h2 id="문제">문제</h2>
<p>졸업 작품으로 만들었던 &#39;Your World&#39;란 아트게임을 github에 올리고 싶어서 시도하던 도중 오류를 마주했다..!</p>
<p><img src="https://velog.velcdn.com/images/sol_mi/post/18ddff23-5856-47e8-b680-b0b01e9cc6d5/image.png" alt=""> </p>
<h4 id="용량이-초과됐다는-경고-메세지ㅠㅠ">용량이 초과됐다는 경고 메세지ㅠㅠ</h4>
<p>하지만 github에서 이런 가벼운 게임도 못 올라갈 일이 없다고 생각했기에 열심히 검색해서 방법을 알아냈다:D</p>
<p>25MB이하로 시도하라고 메세지가 표시됐지만 시도를 해보니 100MB 밑으로는 굳이 따로 처리를 안해줘도 warning이 뜰 뿐 업로드는 문제 없이 된다. 100MB이상의 파일들을 업로드할 때 참고하면 좋을 것 같다!</p>
<p>(사실 엄청 해맸어서 정리할겸 다시 업로드를 해보았고, 그 과정을 본문에 실었다)</p>
<h3 id="사전-준비">사전 준비</h3>
<pre><code>git lfs install</code></pre><p>lfs설치가 필요하다.
참고) <a href="https://git-lfs.com/">https://git-lfs.com/</a></p>
<h2 id="해결법">해결법</h2>
<h4 id="1-올리고-싶은-파일들이-있는-폴더에-가서-git-bash를-켜주자">1. 올리고 싶은 파일들이 있는 폴더에 가서 git bash를 켜주자!</h4>
<h4 id="2-새로운-git-저장소-repository를-생성할-때-사용하는-git-명령어-입력">2. 새로운 Git 저장소 (repository)를 생성할 때 사용하는 Git 명령어 입력</h4>
<pre><code>git init</code></pre><p><img src="https://velog.velcdn.com/images/sol_mi/post/d3a8ecfb-6471-403d-bb30-727379204c9d/image.png" alt=""></p>
<pre><code>cf) git bash에서 붙여넣기는 ctrl+shif+Ins 😉</code></pre><blockquote>
<p>여기서 잠깐!
<strong>main과 master</strong>에 대해서 한번 짚고 넘어가야 한다.</p>
</blockquote>
<ul>
<li>현재는 master를 사용하지 말자는 운동 때문에 main을 default branch로 하는 경우가 많아졌다고 한다.<br/></li>
<li>따라서 default branch가 master라면 main으로 수정하는걸 권장한다. (필수는 아니지만 바꿔두면 편할 것이다..! <strong>master로 하고 싶다면 아래 과정에서 main을 master로 바꿔써줘야 작동한다.</strong>)<br/></li>
<li>아래 명령어를 그대로 입력해주면 된다. 그리고 gitbash를 재실행하고 처음부터 순서를 다시 따라오길 바란다!<pre><code>git config --global init.defaultBranch main</code></pre></li>
</ul>
<h4 id="3-github-repository와-연결해주기">3. github repository와 연결해주기</h4>
<pre><code>git remote add origin https://github.com/SOL-MI/YourWorld.git</code></pre><p><img src="https://velog.velcdn.com/images/sol_mi/post/e6a7766a-4bac-4844-a355-b8aa3f1b0afb/image.png" alt=""></p>
<p>github에서 레포지토리 주소를 복사해서 붙여넣어주면 된다!
만약 레포지토리 생성시 README.md 파일을 같이 생성했다면 4번 단계에 넘어가기 전에 pull을 한번 해줘야 한다.</p>
<pre><code>git pull origin main</code></pre><h4 id="4-어떤-파일이-용량이-큰지-찾아야한다">4. 어떤 파일이 용량이 큰지 찾아야한다.</h4>
<p>(만약에 어떤 파일이 큰지 알고 있으면 이 단계를 생략해도된다!)</p>
<pre><code>find -type f -size +100M -exec ls -lh {} \;</code></pre><h4 id="5-해당-파일을-찾았다면-track을-해줘야한다">5. 해당 파일을 찾았다면 track을 해줘야한다!</h4>
<p>(나의 경우는 100MB가 넘는 파일이 1개 뿐이었다.
: ./YourWorld_Data/sharedassets1.assets.resS )</p>
<pre><code>$ git lfs track &quot;./YourWorld_Data/sharedassets1.assets.resS&quot;</code></pre><p>그러면 .gitattributes 파일이 생성된다! 
gitattributes는 lfs파일 정보가 담긴 파일이다.
(<a href="https://newsight.tistory.com/330">https://newsight.tistory.com/330</a> 참고하기)
<img src="https://velog.velcdn.com/images/sol_mi/post/e02b735e-26f7-4624-84fe-4c46a4998627/image.png" alt=""></p>
<h4 id="6-안전하게-gitattributes를-먼저-push해보도록-하자">6. 안전하게 .gitattributes를 먼저 push해보도록 하자..</h4>
<p>(순서대로 입력해주자)</p>
<pre><code>git add .gitattributes</code></pre><pre><code>git commit -m &quot;create .gitattributes&quot;</code></pre><pre><code>(따옴표 안 커밋메세지는 알아서 수정하기) </code></pre><pre><code>git push origin main</code></pre><p>그러면 정상적으로 올라간 것을 확인할 수 있다!!!
<img src="https://velog.velcdn.com/images/sol_mi/post/1745ac80-11c2-4466-9b41-cbc5fd6533ff/image.png" alt=""></p>
<h4 id="7-이제-거의-끝나가니-편안한-마음으로-중간-점검">7. 이제 거의 끝나가니 편안한 마음으로 중간 점검</h4>
<p>지금 상태 확인을 위한 명령어 입력 (안하고 넘어가도 상관없음. 말그래도 잘 진행되고 있는지 확인하려는 목적)</p>
<pre><code>git status</code></pre><p><img src="https://velog.velcdn.com/images/sol_mi/post/27ec1132-4543-471c-9b06-da16efab1098/image.png" alt=""></p>
<h4 id="8-앞서-gitattributes파일-push할-때와-똑같은-과정을-반복해준다">8. 앞서 .gitattributes파일 push할 때와 똑같은 과정을 반복해준다.</h4>
<pre><code>git add . </code></pre><pre><code>현재 위치에 있는 모든 파일을 add하라는 의미이다.</code></pre><pre><code>git commit -m&quot;upload project&quot;</code></pre><pre><code>git push origin main</code></pre><p>그러면 깃허브에 잘 올라간 것을 확인할 수 있다 😀
<br/></p>
<h3 id="과정을-반복하며-알게된-점">과정을 반복하며 알게된 점</h3>
<blockquote>
<h4 id="동일한-파일명의-lfs파일은-같은-github-계정에-하나만-올라간다">동일한 파일명의 lfs파일은 같은 github 계정에 하나만 올라간다.</h4>
</blockquote>
<p>이 글을 쓸 때 정리할겸 다시 테스트를 해보다가 발견했다.
똑같이 했는데 왜 안되는건지.......엄청 헤맸다......<br/></p>
<p><img src="https://velog.velcdn.com/images/sol_mi/post/e2a08ad4-40e8-49b6-b758-ad067df7e1fc/image.png" alt=""> tracking도 제대로 하고 있는데
<img src="https://velog.velcdn.com/images/sol_mi/post/0c523aca-d8ff-4552-a7a9-41c81e18d53a/image.png" alt="">
lfs 파일 업로드에 실패했다는 이 에러 메세지에서 헤어나오질 못했다.....</p>
<p>해결방법은 &#39;파일명 변경&#39;이었다. 이미 예전에 github에 올리면서 해당 파일이 업로드 되어있었기에 중복이 불가해서 업로드가 되지 않았던 것이었다.
(이미 깃헙에 업로드 해둔 상태지만 다시 한번 복기하기 위한 시도였기에 일반적인 시도가 아니여서 해결법을 찾기가 더 쉽지 않았었다.)</p>
<p>cf) 다른 깃헙 계정에 올리는 방법도 있다.
    다만, 컴퓨터 내에서 사용자 정보를 변경해야한다.
    <a href="https://hohoya33.tistory.com/122">https://hohoya33.tistory.com/122</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[Git 이론 정복하기]]></title>
            <link>https://velog.io/@sol_mi/Git-%EC%9D%B4%EB%A1%A0-%EC%A0%95%EB%B3%B5%ED%95%98%EA%B8%B0</link>
            <guid>https://velog.io/@sol_mi/Git-%EC%9D%B4%EB%A1%A0-%EC%A0%95%EB%B3%B5%ED%95%98%EA%B8%B0</guid>
            <pubDate>Wed, 12 Jul 2023 04:37:25 GMT</pubDate>
            <description><![CDATA[<h2 id="새로-배운-이론">새로 배운 이론</h2>
<ul>
<li><strong>cli 환경</strong>
: 개발 하는 환경
: Command-Line Interface 또는 Character User Interface의 줄임말로 글자를 입력하여 컴퓨터에 명령을 내리는 방식
: 장점) 안정적, 빠른 속도, 적은 데이터 양
<br></br><h3 id="powershell">Powershell</h3>
cmd 명령 프롬프트는 몇 번 사용해봤었는데 powershell이라는 것을 처음 접해보았다. 내가 보기엔 둘이 똑같은 역할을 하는 것으로 보였는데 어떤 차이가 있는지 궁금해졌다!<blockquote>
<p>PowerShell은 신규 명령 프롬프트로 CMD는 한정된 명령어로만 동작하는 반면 PowerShell은 훨씬 많은 명령어를 가지고 있다. </p>
</blockquote>
</li>
</ul>
<p>앞서 언급한 내용은 대표적인 차이점이고 추가적인 차이점도 존재한다.</p>
<ol>
<li>powershell은 객체 지향 언어를 사용한다!</li>
<li>powershell은 작업을 도와주는 기본 제공 라이브러리를 지원한다!</li>
<li>powershell은 GUI애플리케이션이 있다!(Windows PowerShell ISE)</li>
</ol>
<h4 id="간단하게-알아보는-powershell-명령어">간단하게 알아보는 PowerShell 명령어</h4>
<ul>
<li>Get-Location : 현재 경로 파악</li>
<li>dir : 현재 경로에 있는 모든 파일/폴더 확인 (윈도우 기준)</li>
<li>cd (경로) : change directory의 약자.</li>
<li>cd.. : 현재 위치에서 한단계 밖으로 나가기</li>
<li>mkdir (폴더명) : 폴더 만들기. 한글도 가능하다!</li>
<li>cp(복사), mv(이동), rm(삭제) 등등..<br/>
### 절대 경로  & 상대 경로</li>
<li>상대 경로 
: 현재 내가 위치한 곳에서의 본 특정한 폴더/파일의 경로</li>
<li>절대 경로 
: 내 위치와 상관없이, 컴퓨터 전체에서 바라본 특정한 폴더/파일이 위치한 경로의 주소. (/를 붙인다는 특징이 있다.)<br/>
### Git
Git은 버전 관리를 위한 '프로그램'

</li>
</ul>
<p><em>우리 컴퓨터에 있는 git 저장소 = local repository
github상의(온라인 상의) Git 저장소 = remote repository</em></p>
<ul>
<li><p><strong>git commit</strong>
: 명령어를 통해 현재 관리 중인 파일을 하나의 버전으로서 저장
: commit을 통해 저장된 버전간에는 자유롭게 이동 가능
: 보통은 기능별로 commit (실무)</p>
</li>
<li><p><strong>add와 commit의 기능 한 줄 요약</strong>
git add를 통해 &#39;상관하기 시작. 바라만 보는 상태&#39;
git commit을 통해 &#39;저장&#39;</p>
</li>
</ul>
<p><img src="https://velog.velcdn.com/images/sol_mi/post/933ef80b-95b8-430f-8542-b4e990392191/image.png" alt="">(출처: <a href="https://medium.com/ai-saturdays/basic-tutorials-part-2-ee778e5926cf">https://medium.com/ai-saturdays/basic-tutorials-part-2-ee778e5926cf</a>)</p>
<h4 id="git-명령어-엿보기"><strong>Git 명령어 엿보기</strong></h4>
<ul>
<li><strong>git commit --amend</strong> : 커밋 덮어쓰기</li>
<li>버전 되돌리는 명령어</li>
</ul>
<ol>
<li><p><strong>git reset (파일명)</strong>
이전 버전으로 돌아가면서 그 버전을 최신 버전으로 만듦. (이후 버전은 모두 삭제 -&gt; 위험해서 잘 안씀.)</p>
<ul>
<li><strong>git reset --soft</strong> : 파일은 그대로 두고, 커밋 기록만 되돌아가는 것.</li>
<li><strong>git reset --hard</strong> : 파일도 되돌아감. (굉장히 위험. 안쓰는게 좋다.)</li>
<li><strong>git reset --mixed</strong> : --soft와 비슷한데, 이후 수정사항들을 commit 이전으로 되돌리는 것이 아니라, add 이전으로 되돌림 (add이전 상태인 untracked상태)</li>
</ul>
</li>
<li><p><strong>git revert (파일명)</strong></p>
<ul>
<li>기록을 놔둔 채 예전 버전으로 돌아간다.</li>
<li>돌아가면서 예전 버전으로 돌아간다는 기록도 추가로 남김</li>
</ul>
</li>
</ol>
<blockquote>
<p><strong>git revert와 git reset 사용시 &#39;파일명&#39; 주의할 점</strong>
 revert : 되돌릴 버전을 적기.
 reset : 되돌아가고 싶은 목적지를 적기.
cf) <em>revert가 기록이 남으니 revert를 쓰자..</em></p>
</blockquote>
<h3 id="git을-활용한-협업-방법-2가지">Git을 활용한 협업 방법 2가지</h3>
<ul>
<li>git clone
: 원격저장소 github repo하나를 여러명이서 함께 사용하는 방식
: &#39;원격 저장소 1개&#39;에다가 같이 작업할 사람을 collaborator로 추가해서 함께 작업
: 소규모 개발팀 / 스타트업에서 적합<br/></li>
<li>fork(깃허브 기능)
: 원본 저장소(github repo)하나를 사람마다 복사해서 각각 자신의 repo를 만들고 자기 repo에서 작업하고 원본 repo로 수정사항을 보내는 방법
: 팀이 너무 많은 개발단위 / 대기업</li>
</ul>
<h4 id="협업-간단-실습해보기">협업 간단 실습해보기</h4>
<h4 id="다른-사람이-만든-repo를-clone해와서-수정-후-push하기">:다른 사람이 만든 repo를 clone해와서 수정 후 push하기</h4>
<p><del>1. git init</del>
2. git clone (repo주소) //괄호는 빼주기
3. cd 폴더명
4. 수정 및 저장
5. git add .
6. git commit -m&quot;내용&quot;
7. git push origin main
<br/></p>
<blockquote>
<ul>
<li>내가 현재 어떤 경로에서 작업하고 있는지 확인하는 습관을 항상 들이자!</li>
</ul>
</blockquote>
]]></description>
        </item>
    </channel>
</rss>