1、初始化:
初始化 git init
配置提交账号
git config --global user.name "xx"
git config --global user.email "xx"
查询配置 git config --local --list
删除配置内容 git config --unset --global user.name
2、版本控制:
将工作空间的所有修改都撤销(回到暂存区或版本库上的状态) git checkout -- (版本号) 文件名
创建分支 git checkout -b dev
git checkout -b dev origin/dev 或者(git checkout origin/dev -b dev)
git branch name
查看当前分支 git branch
拉取远程信息 git fetch origin
3、修改:
提交修改到本地 git add readme.txt
提交到仓库 git commit -m 'readme.txt commit' 文件名
查看当前状态 git status
与指定分支(版本)的某个文件比较git diff origin/master readme.txt
去掉某个文件的git记录 git rm --cached <file>
暂时不追踪 git update-index --assume-unchanged <path>
恢复追踪 git update-index --no-assume-unchanged <path>
禁用"fast forward模式"合并 git merge --no-ff -m 'comment' dev
回退两个版本 git reset --hard HEAD^
100个版本 HEAD~100
隐藏现场 git stash
显示隐藏的工作现场列表 git stash list
应用stash内容,但不删除 git stash apply (stash@{id})
删除stash内容 git stash drop (stash@{id})
恢复的同时把stash内容删除 git stash pop (stash@{id})
4、历史记录
查看历史记录 git log --pretty=oneline
查看历史记录的版本号id git reflog
5、远程交互
从url拉取master分支 git pull origin master
往origin服务推送master分支的修改,推送前先更新 git push -u origin master
关联一个远程库 git remote add origin https://github.com/guzhangyu/test.git
git remote set-url origin git@github.com:user/repo.git
查看远程库信息 git remote
查看远程库详细信息 git remote -v
展示远程版本信息 git remote show origin
拉取远程信息 git remote update
删除远程分支 git push origin :branch-name
删除远程仓库不存在的分支 git remote prune origin (不知道这个怎么用
)
6、重写提交日志:
git rebase 的黄金法则便是,绝不要在公共的分支上使用它
git merge-base feature master 找出feature分支开始分叉的基
git rebase -i version在feature上从master的分离时刻开始重写日志
git rebase master feature 将master rebase到feature上
如果你将pull request作为你代码审查过程中的一环,你需要避免在创建pull request之后使用git rebase。只要你发起了pull request,其他开发者能看到你的代码,也就是说这个分支变成了公共分支
|