'Open Source/git / svn / bazaar'에 해당되는 글 6건

  1. 2016.10.18 [GIT] windows에서 invalid username (wincred)
  2. 2012.07.12 commit.template - default commit message (2)
  3. 2012.02.15 resume in github (2)
  4. 2012.01.17 github에 내 사이트 만들기. (1)
  5. 2010.08.11 svn과 proxy
  6. 2010.01.10 Git 사용법(Manual) (1)

http://www.codewrecks.com/blog/index.php/2015/06/23/git-for-windows-getting-invalid-username-or-password-with-wincred/


만약 login이 귀찮아 wincred를 아래처럼 설정해서 썼다면, 비밀번호가 바뀌었을때 대략 난감해진다.

git config --global credential.helper wincred

이 상황에서는 제어판의 "자격 증명 관리자" 를 찾아 들어가 관련 repository와 관련된 것을 지워주고 다시 git 명령을 치면 된다.

저작자 표시
신고

'Open Source > git / svn / bazaar' 카테고리의 다른 글

[GIT] windows에서 invalid username (wincred)  (0) 2016.10.18
commit.template - default commit message  (2) 2012.07.12
resume in github  (2) 2012.02.15
github에 내 사이트 만들기.  (1) 2012.01.17
svn과 proxy  (0) 2010.08.11
Git 사용법(Manual)  (1) 2010.01.10
Posted by 소혼

참고: http://git-scm.com/docs/git-config

진행 중인 프로젝트에서 commit을 할 때 의무적으로 적어야 하는 양식이 생겨버렸습니다. OTL

webkit 프로젝트처럼 저절로 관련된 정보들을 읽어와서 템플릿에 적절히 동작할 수 있도록 해주면 좋겠지만,

최소한 의무적으로 들어가는 정보들을 무식하게 타이핑하는 것은 막아야 할 것 같아 방법을 찾아보다가 commit.template를 발견했습니다.


원래는 hook으로 해결하려고 했지만, hook을 사용하는 방법을 아직 잘 모르겠네요.(더 공부가 필요할 듯)

일단, 이 방법이 더 쉬운 듯 합니다.


git는 커밋할 때 template을 지정할 수 있습니다.

이를 config로 저장할 수도 있습니다.


1) .git/config 파일 또는 ~/.gitconfig 파일 안에 아래와 같은 내용을 넣습니다.

[commit]
    template = mytemplate

2) 그리고 mytemplate파일에는 원하는 메시지를 넣습니다.


3) 아래 손가락을 꾹 눌러줍니다.


신고

'Open Source > git / svn / bazaar' 카테고리의 다른 글

[GIT] windows에서 invalid username (wincred)  (0) 2016.10.18
commit.template - default commit message  (2) 2012.07.12
resume in github  (2) 2012.02.15
github에 내 사이트 만들기.  (1) 2012.01.17
svn과 proxy  (0) 2010.08.11
Git 사용법(Manual)  (1) 2010.01.10
Posted by 소혼
TAG Git
참고 : http://bunhere.tistory.com/324

github에 resume repo를 만들어보기로 마음먹었다.
일단 resume repo를 생성하여 index.html을 넣었다.
물론 master branch에 넣은 파일은 아무런 의미가 없다.


1) master branch 설정하기.

# mkdir resume
# cd resume/
# git init
Initialized empty Git repository in /workspace/github/resume/.git/
# touch index.html
# git add index.html
# git commit -m "Add index.html in master branch"
[master (root-commit) 481a88e] Add index.html in master branch
 1 files changed, 1 insertions(+), 0 deletions(-)
 create mode 100644 index.html
# git remote add origin git@github.com:bunhere/resume.git
# git push -u origin master
Counting objects: 3, done.
Writing objects: 100% (3/3), 244 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@github.com:bunhere/resume.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.

2) gh-pages branch 설정하기.

# git symbolic-ref HEAD refs/heads/gh-pages
# rm .git/index
# git add index.html
# git commit -m "Add index.html in gh-pages branch"
[gh-pages (root-commit) f9cf437] Add index.html in gh-pages branch
 1 files changed, 1 insertions(+), 0 deletions(-)
 create mode 100644 index.html
# git push origin gh-pages
Counting objects: 3, done.
Writing objects: 100% (3/3), 246 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@github.com:bunhere/resume.git
 * [new branch]      gh-pages -> gh-pages

이제 http://bunhere.github.com/resume/ 로 들어가면 된다.
신고

'Open Source > git / svn / bazaar' 카테고리의 다른 글

[GIT] windows에서 invalid username (wincred)  (0) 2016.10.18
commit.template - default commit message  (2) 2012.07.12
resume in github  (2) 2012.02.15
github에 내 사이트 만들기.  (1) 2012.01.17
svn과 proxy  (0) 2010.08.11
Git 사용법(Manual)  (1) 2010.01.10
Posted by 소혼
참 고: https://github.com/blog/272-github-pages

github 는 git repository 를 제공해주는 서비스입니다.
오픈소스 프로젝트를 만들때도 도움이 되지만,  이 서비스를 이용해 자신의 홈페이지를 만들수도 있습니다.

1) 일단, 가입하셔야합니다. (인터넷 참고)

2) {자기아이디}.github.com 라는 이름의 repository 를 만듭니다. (인터넷 참고)

잘 만들어졌는지 시키는데로 따라했습니다.
  mkdir bunhere.github.com
  cd bunhere.github.com
  git init
  touch README
  git add README
  git commit -m 'first commit'
  git remote add origin git@github.com:bunhere/bunhere.github.com.git
  git push -u origin master

 3) gh-pages라는 branch를 만듭니다.
  cd /path/to/repo-name
  git symbolic-ref HEAD refs/heads/gh-pages
  rm .git/index
  git clean -fdx
  echo "My GitHub Page" > index.html
  git add .
  git commit -a -m "First pages commit"
  git push origin gh-pages

4) 기다립니다.

생각보다 시간(10분)이 많이 걸립니다. 바로 뭔가를 확인하기엔 좋지 않은듯 합니다. 
신고

'Open Source > git / svn / bazaar' 카테고리의 다른 글

[GIT] windows에서 invalid username (wincred)  (0) 2016.10.18
commit.template - default commit message  (2) 2012.07.12
resume in github  (2) 2012.02.15
github에 내 사이트 만들기.  (1) 2012.01.17
svn과 proxy  (0) 2010.08.11
Git 사용법(Manual)  (1) 2010.01.10
Posted by 소혼


svn을 통해 소스를 다운로드할 때 proxy를 사용한다면 다운로드가 되지 않을 수 있다.
이런 경우,  먼저 proxy 정보를 설정해볼 수 있다.
http-proxy-host = 프록시 주소 or IP
http-proxy-port = 프록시 포트

두번째, proxy 를 변경해야 할 수 있다.
이유는 proxy가 서브버전이 사용하는 http 메소드를 지원하지 않을 수 있기 때문이다.
Squid의 경우
아래와 같은 config option을 추가하면 된다.
   #  TAG: extension_methods
# Squid only knows about standardized HTTP request methods.
# You can add up to 20 additional "extension" methods here.
#
#Default:
# none
extension_methods REPORT MERGE MKACTIVITY CHECKOUT

만약 proxy를 변경할 수 없다면 대략 난처한데 포트를 81로 바꾸어보거나 https로 해보는 것도 방법이다.
그러나 https가 안되는 경우도 있다. repository가 지원하지 않는다면 당연히 안된다.
또 내가 사용하는 svn의 버전도 중요하다. svn이 https를 지원하지 않을 수도 있다.

참고
http://subversion.apache.org/faq.html#proxy
http://blog.daum.net/r_p_feynman/16133209

이 글이 도움이 되셨다면 아래 손가락 꾹 눌러주세요.
신고

'Open Source > git / svn / bazaar' 카테고리의 다른 글

[GIT] windows에서 invalid username (wincred)  (0) 2016.10.18
commit.template - default commit message  (2) 2012.07.12
resume in github  (2) 2012.02.15
github에 내 사이트 만들기.  (1) 2012.01.17
svn과 proxy  (0) 2010.08.11
Git 사용법(Manual)  (1) 2010.01.10
Posted by 소혼
TAG Proxy, svn
여기저기서 줏어모은 제가 자주 쓰는 git에 대한 명령어들입니다.
아래 참고 URL을 보시면 더 많은 정보가 있습니다.
git manual

http://www.slideshare.net/saharabeara/advanced-git-tutorial

git tutorial 
http://www.funit.net/git

http://gitimmersion.com/ (영어로 되어 있음. 따라하다가 포기 ^^;; )

기타

http://noiseandheat.com/blog/2012/02/lazy-one-liners-%60git-rm%60-all-deleted-files/




git 설명을 위한 이미지


1. 시작하기
git init
git clone {remote repo}
ex1 - git clone https://github.com/bunhere/git-study.git
ex2 - git clone ../anotherGitRepo
ex3 - git clone git://github.com/bunhere/git-study.git


(추가글1)

방화벽등으로 SSL접속이 안된다면 (https)

GIT_SSL_NO_VERIFY=true git clone https://...


(추가글2)
git 관련 환경 설정 (http://live.gnome.org/Git/Developers  참조)


- 자신의 이름과 이메일 설정
git config --global user.name "Rupert Monkey"
git config --global user.email rupert@example.com
- color 설정
git config --global color.ui auto

2. 작업 내용 확인하고 커밋하기
git add [파일 또는 폴더 명]   : git에 파일 또는 폴더 추가  (. 을 적으면 현재 폴더 이하를 추가)
git rm [파일 또는 폴더명] : git에서 파일 또는 폴더 제거
git status : 현재 git 상태 보기
git commit -m "로그 메시지" : 위에서 add/rm한 상태를 git repo에 메시지와 함께 저장
git commit --amend 

(이미 commit한) 마지막 commit에 추가로 수정한 내용을 반영한다.(물론 그 전에 git add등을 해야 함)

3. 작업 내용 꺼내오기
git checout [파일 또는 폴더명] : 현재 git repo기준 마지막 commit상태로 돌림
git checkout 4ab18a1 [파일 또는 폴더명] : git repo 로그중 4ab18a1으로 시작하는 commit id로 돌림
git reset --hard master : git repo를 master branch의 최종으로 원복함

4. 가지 만들어 옮겨 다니기
git branch newb (master) : (master) branch로부터 newb 라는 이름의 브랜치를 만듬
git checkout newb : newb 브랜치의 내용을 보기 시작함

git branch -a : 현재 생성된 모든 로컬 브랜치와 원격 브랜치를 확인함

git checkout master : master 브랜치로 전환
git merge newb  : newb브랜치의 내용을 가져와 현재 브랜치에 합침


5.  원격 저장소 추가하기.

git remote add upstream git://github.com/WebKit/webkit.git


예) master (ref origin/master)에 upstream/master를 가져와 merge할때. (github에서 mirror repo를 sync할 때 사용)

git checkout master (현재 브랜치를 마스터로 바꿈)

git fetch upstream (remote branch인 upstream branch 의 인덱스를 갱신함)
git merge upstream/master (현재 브랜치에 머지함)


git rebase newb  : newb브랜치의 내용을 가져온 후, 현재 브랜치에만 있는 커밋들을 그 뒤에 붙임.(주의)

 예를 들어 master와 newb가 아래와 같다면,
(1) - (2) - (3) - (4)                 -------------- master (현재 working branch)
           \ _ (5)                    -------------- newb
git rebase newb를 수행하고 나면 아래와 같이 됨.
(1) - (2) - (5) - (3) - (4)          -------------- master (현재 working branch)


git branch -d newb : newb 브랜치를 지움 (로컬 브랜치만 가능)

6. 원격 브랜치 관리

git fetch origin : origin 이라는 remote 브랜치의 정보를 갱신함

git fetch -p origin : origin이라는 remote 브랜치를 갱신할 때 삭제된 리모트 브랜치의 정보를 로컬에서도 지움
git remote prune origin : 상동
( git config remote.origin.prune true : fetch할때마다 자동으로 정리)

master 브랜치를 rebase하고 원격 branch에 push하려고 하면 에러 git push -f가 가능해야 함.
git push origin newb : origin 에 해당하는 repo에 newb 브랜치를 올림.(없으면 생성함)
git push origin :newb : origin 에 해당하는 repo에 newb 브랜치를 지움.
git push origin --delete newb : origin 에 해당하는 repo에 newb 브랜치를 지움.( git 1.7 이상)

7. merge fail시 내용 수정
git commit -a -m "~~"  : 수정된 상태로 commit

8. 이전 작업 내용 보기
git log -p -m : 현재까지 changeset을 모두 추출
git log --decorate {branch} : tag, branch정보등을 같이 보여준다.
git log --author=bunhere | git shortlog
 : bunhere가 작업한 commit들을 보기
git show qsz01ad:src/t.cpp : qsz01ad commit 시점의 src/t.cpp파일 내용을 확인한다.

git log -Ssource_change { -- filename } : filename의 이전 변경에서 source_change를 찾는다

git shortlog -s -n --since="YYYY-MM-DD" : author별로 커밋의 수를 모아서 보여준다.

8. git에 tag 달기
git tag -a mytag : mytag란 이름으로 로컬 브랜치에 태그 추가 (현재 위치(현재 브랜치, 현재 commit)에 반영됨)
git push origin tag mytag : remote 브랜치에 tag 반영

8. 마지막 commit을 삭제하기
git reset --hard HEAD^ : ^가 한개면 하나의 commit을 삭제하고 두개면 두개의 commit을 삭제함. 원격 repository는 당연히 수정되지 않음.

9. patch 만들기
git format-patch -M -C --output-directory {patch directory} start..end :


10. git commit 순서 바꾸기

A-B-C-D => A-C-B-D

git reset --hard A
git cherry-pick B
git cherry-pick C
git cherry-pick D

또는 git rebase -i 로도 가능


11. 지워진 파일들을 모두 git rm하기
git status --porcelain | awk '/^.D .*$/ {print $2}' | xargs git rm


12. git commit count

git rev-list HEAD --count

git log --pretty=oneline | wc -l


기타

git 방화벽 이슈

git config --global http.proxy http://xxx.xxx.xxx.xxx

이것만으로 안될 경우 proxy wrapper를 이용

export GIT_PROXY_COMMAND="/usr/bin/proxy-wrapper"

sudo vi /usr/bin/proxy-wrapper

#! /bin/bash
(echo "CONNECT $1:$2 HTTP/1.0"; echo; cat ) | nc 168.219.61.252 8080 | (read a; read a; cat ) 


git branch --set-upstream-to=origin/master master


신고

'Open Source > git / svn / bazaar' 카테고리의 다른 글

[GIT] windows에서 invalid username (wincred)  (0) 2016.10.18
commit.template - default commit message  (2) 2012.07.12
resume in github  (2) 2012.02.15
github에 내 사이트 만들기.  (1) 2012.01.17
svn과 proxy  (0) 2010.08.11
Git 사용법(Manual)  (1) 2010.01.10
Posted by 소혼
TAG Git, 사용법
이전버튼 1 이전버튼

티스토리 툴바