Git 文档笔记
in Others with 0 comment, Views is 111

Git 文档笔记

in Others with 0 comment, Views is 111

新建代码库

> git init
> git init [project-name]
> git clone [url]

配置

Git 的设置文件为 .gitconfig,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。

> git config --list
> git config -e [--global]
> git config [--global] user.name "[name]"
> git config [--global] user.email "[email address]"

增加/删除文件

> git add [file1] [file2] ...
> git add [dir]
> git add .
> git add -p
> git rm [file1] [file2] ...
> git rm --cached [file]
> git mv [file-original] [file-renamed]
> git reset --hard HEAD~1
> git push --force
> git commit --amend 

代码提交

> git commit -m [message]
> git commit [file1] [file2] ... -m [message]
> git commit -a
> git commit -v
> git commit --amend -m [message]
> git commit --amend [file1] [file2] ...

分支

> git branch
> git branch -r
> git branch -a
> git branch [branch-name]
> git checkout -b [branch]
> git branch [branch] [commit]
> git branch --track [branch] [remote-branch]
> git checkout [branch-name]
> git checkout -
> git branch --set-upstream [branch] [remote-branch]
> git merge [branch]
> git cherry-pick [commit]
> git branch -d [branch-name]
> git push origin --delete [branch-name]
> git branch -dr [remote/branch]

标签

> git tag
> git tag [tag]
> git tag [tag] [commit]
> git tag -d [tag]
> git push origin :refs/tags/[tagName]
> git show [tag]
> git push [remote] [tag]
> git push [remote] --tags
> git checkout -b [branch] [tag]

查看信息

> git status
> git log
> git log --stat
> git log -S [keyword]
> git log [tag] HEAD --pretty=format:%s
> git log [tag] HEAD --grep feature
> git log --follow [file]
> git whatchanged [file]
> git log -p [file]
> git log -5 --pretty --oneline
> git shortlog -sn
> git blame [file]
> git diff
> git diff --cached [file]
> git diff HEAD
> git diff [first-branch]...[second-branch]
> git diff --shortstat "@{0 day ago}"
> git show [commit]
> git show --name-only [commit]
> git show [commit]:[filename]
> git reflog

远程同步

> git fetch [remote]
> git remote -v
> git remote show [remote]
> git remote add [shortname] [url]
> git pull [remote] [branch]
> git push [remote] [branch]
> git push [remote] --force
> git push [remote] --all

撤销

> git checkout [file]
> git checkout [commit] [file]
> git checkout .
> git reset [file]
> git reset --hard
> git reset [commit]
> git reset --hard [commit]
> git reset --keep [commit]
> git revert [commit]
> git stash
> git stash pop

其他

> git archive

基本操作

> git remote rm [shortname]
> git remote add [shortname] [url]
> git add .
> git commit -m "版本注释"
> git push [shortname]
> git commit --amend -m "版本注释"
> git push -u [shortname] master -f
> git fetch --all  
> git reset --hard origin/master 
> git pull
> git log
> git reset --hard [版本ID]
> git push -f -u [shortname] master

状态

A: 你本地新增的文件(服务器上没有)
C: 文件的一个新拷贝
D: 你本地删除的文件(服务器上还在)
M: 文件的内容或者mode被修改了
R: 文件名被修改了
T: 文件的类型被修改了
U: 文件没有被合并(你需要完成合并才能进行提交)
X: 位置状态(很有可能遇到git的bug了,可以向git提交bug report)

Responses
选择表情