forked from michaelliao/learngit
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRyan_LearnNote
71 lines (53 loc) · 3.62 KB
/
Ryan_LearnNote
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
git init //将当前目录变为git仓库
git add <filename> //将filename添加到暂存区,待添加到仓库
git commit -m "version information" //将暂存区文件提交到仓库,-m 输入本次提交的说明
-m "version information" //-m 输入本次提交说明
git status //查看仓库当前状态
git diff <filename> //查看filename修改内容
git diff HEAD -- <filename> //查看filename工作区和版本库里最新版本的区别
git log //显示从最近到最远的提交日志。
--pretty=oneline //简要显示提交日志
--graph //查看分支合并图
--abbrev-commit //仅显示sha1号前几位
git reset --hard HEAD^ //回退至上一版本
git reset --hard 1094a //回退至指定版本
git reflog //查看历史命令
git checkout -- <filename> //丢弃filename工作区的修改
git reset HEAD <filename> //把暂存区的修改撤销掉
git rm <filename> //将filename从版本库删掉,rm 之后 需要 git commit提交,如果不小心误删工作区的文件且版本库中有此文件,可以使用 git checkout -- filename恢复
git remote add origin [email protected]:1006076811/kuming.git //将本地库与远程库关联
git push -u origin master //将当前分支master推送到远程
-u //第一次推送master分支时,加-u,git不但会把本地master内容推送到远程新master分支,还会将其关联,以后的推送或拉取就可以简化了
git clone [email protected]:1006076811/ku.git //将远程库克隆到本地,后面那一串是github给出的ssh地址
git checkout -b <branchname> //创建分支branchname并切换,相当于 git branch dev,git checkout dev
git branch //查看当前分支
git checkout branchname //切换到branchname分支
git merge branchname //将branchname分支合并到master主分支
git branch -d branchname //删除branchname分支
git log --graph //可以看到分支合并图
git stash //保存当前分支工作现场
git stash list //查看已经保存的分支工作现场
git stash pop //恢复分支工作现场,并清空stash内容
git stash apply //恢复分支工作现场,但不清空stash内容
git stash apply stash@{0} //恢复分支stash@{0}工作现场,但不清空stash内容
git stash drop //清空stash内容
git branch -D <branchname> //强制删除分支branchname
git remote //查看远程库信息
-v //显示更详细的远程库信息
git push origin branchname //推送分支到远程库,如果推送失败,则因为远程分支比我的本地更新,需要先用git pull试图合并
//如果合并有冲突,则解决冲突,再次提交推送
若 git pull 提示 no tracking information,则说明本地分支和远程分支的链接没有创建,用命令 git branch --set-upstream-to <branchname> origin/<branchname>
git checkout -b dev origin/dev //创建远程origin的dev到本地
git pull //从远程抓取分支
git rebase //把本地未push的分叉提交历史整理为直线,看起来清晰
git tag //查看标签,注意,是按字母排序,而非时间排序
git show <tagname> //查看说明文字
git tag <tagname> //首先切换到需要打标签的分支,然后进行打标签
//tagname也可以换位某次的提交,换为commit号,类似回退
git tag -a v0.1 -m "version 0.1 released" 1094adb //-a指定标签名 -m指定说明信息
git tag -d v0.1 //删除标签
git push origin <tagname> //推送某个标签到远程
git push origin --tags //推送全部尚未推送到远程的本地标签
如果要删除远程标签的话,需要先删除本地标签,再从远程删除:
git tag -d v0.9
git push origin :refs/tags/v0.9