添加文件到缓存区
git add .
打标签
//-a 和 -m 都可以省略 git tag -a v1.0.0 -m '第一次打标签' git tag v1.0.0
查看所有标签,注意标签是按字母排列的
git tag
如果忘记打标签了,要打标签怎么办
//先找到某一次的提交 git log --pretty=oneline --abbrev-commit //然后打标签 git tag v0.9 f52c633
查看某个标签的详细信息
git show v0.9
删除标签
git tag -d v1.0.0
删除一个远程标签
git push origin :refs/tags/v1.0.0
将文件提交到master分支
git commit -m '修改了***'
查看缓存区文件状态
git status
查看哪些文件被修改了
git diff
丢弃工作区的修改
git checkout -- file
删除文件
方法1
git rm file
方法2 删除后commit
克隆远程仓库
git clone git@github.com:michaelliao/gitskills.git
关联git远程仓库
//注意这里的origin可以改成其他的,比如github git remote add origin git@github.com:michaelliao/learngit.git
删除关联的远程库
git remote rm origin
查看远程库的信息
git remote -v
将提交历史整理成直线
git rebase
推送标签到远程
推送一个本地标签
git push origin v1.0.0
推送全部未推送过的本地标签
git push origin --tags
把本地master分支推送到远程仓库对应的master分支里面
git push -u origin master git push origin master //如果以前没有提交记录需要执行 git pull origin master --allow-unrelated-histories
如果推送到远程仓库失败,检查远程库是否存在这个分支
//先抓取最新代码 git pull //在本地创建与远程仓库一样的分支 git checkout -b branch-name origin/branch-name //建立本地分支与远程分支的关联 git branch --set-upstream branch-name origin/branch-name //继续pull git pull
处理pull留下的mergin
//显示工作目录与远程仓库之间的差异 git diff HEAD //显示上一次提交之前工作目录与git仓库之间的差异 git diff HEAD^ //显示索引文件与git仓库之间的差异 git diff –cached
创建dev分支,并且切换到dev分支
git checkout -b dev
相当于
//创建dev分支 git branch dev //切换到dev分支 git checkout dev
查看当前分支
git branch
合并分支
```
//如果当前分支是master,则将dev分支合并到master分支上
//--no-ff -m '' 表示添加合并信息记录,避免合并信息的丢失
git merge --no-ff -m '合并信息' dev
删除分支
git branch -d dev
查看git分支合并图
git log --graph
暂存工作现场
git stash
修复bug后查看保存的工作现场
git stash list
恢复工作现场,并把stash里的内容删除掉
方法一
git stash apply stash@{0} git stash drop stash@{0}
方法二
git stash pop
丢弃一个没有被合并过的分支
//当前是在master分支上 git branch -D dev
git忽略规则
.gitignore 添加忽略文件,可以套用模板https://github.com/github/gitignore
//git 强制推送 git add -f readme.md
必须将.gitignore放置在版本库里
参考
https://www.liaoxuefeng.com/wiki/896043488029600
https://www.cnblogs.com/taohuaya/p/10622471.html