Git
ph
목차
- 1 Port 22: Connection timed out
- 2 Clone submodule at already cloned repo
- 3 Duplicating a repository
- 4 Remove a file from a Git repository without deleting it from the local filesystem
- 5 가져와서 새로운 repo만들기
- 6 remote주소 알아내기
- 7 remote 주소 변경
- 8 Update submodule
- 9 로컬 무시하고 pull
- 10 (git push) matching vs simple
Port 22: Connection timed out
set port to 443 (.ssh/config
)
Host github.com Hostname ssh.github.com Port 443
Clone submodule at already cloned repo
git clone git://github.com/foo/bar.git cd bar git submodule update --init —recursive
Duplicating a repository
git clone --bare https://github.com/exampleuser/old-repository.git cd old-repository.git git push --mirror https://github.com/exampleuser/new-repository.git cd .. rm -rf old-repository.git
--bare와 --mirror가 핵심. refer github help
Remove a file from a Git repository without deleting it from the local filesystem
git rm --cached mylogfile.log
For a directory:
git rm --cached -r mydirectory
http://stackoverflow.com/a/1143800/766330
가져와서 새로운 repo만들기
- Create a new repo at github.
- Clone the repo from the-origin to your local machine.
git remote rename origin upstream
git remote add origin url-of-mine
git push origin master
To pull in patches from upstream, simply run
git pull upstream master && git push origin master
http://stackoverflow.com/a/5181968/766330
remote주소 알아내기
If referential integrity has been broken:
git config --get remote.origin.url
If referential integrity is intact:
git remote show origin
If you want to use the value in the script, you would use the first command.
https://stackoverflow.com/a/4089452/766330
remote 주소 변경
git remote set-url origin git@github.com:USERNAME/OTHERREPOSITORY.git
확인
git remote -v
Update submodule
git submodule update --recursive
http://stackoverflow.com/a/10168693/766330
로컬 무시하고 pull
git reset --hard git pull
로컬을 아예 지우지는 않는 방법
git stash git pull git stash pop
http://stackoverflow.com/a/4157261/766330
(git push) matching vs simple
push all branches
git config --global push.default matching
push only the current branch
git config --global push.default simple