2.git 跟着廖雪峰git教程 敲一遍

"Hello World, Hello Blog"

Posted by wudimingwo on December 15, 2018
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
创建本地仓库
git init

查看
git status

从工作区推到缓存区域(没有时间上的维度)
git add .

从缓存区推到 本地仓库(产生时间维度, 产生版本)
git commit -m "add 1"

对比版本库和工作区的文件, 查看修改的内容
git diff

查看版本库时间维度上的各个版本, 查看commit 信息
git log

更简洁版本
git log --graph --pretty=oneline --abbrev-commit

回到时间轴上的上一个版本
git reset --hard HEAD^

回到上上个版本
git reset --hard HEAD^^

回到前100个版本
git reset -hard HEAD~100

q是退出某个状态.

查看命令历史
git reflog

查看工作区和版本库里面最新版本的区别
git diff HEAD -- readme.txt

撤销工作区的修改,跟暂存区保持一致,
(如果暂存区没文件,就和版本库保持一致.)
git checkout -- "readme.txt"

让暂存区的变成版本库里的.
git reset HEAD readme.txt

上面两个操作,相当于把数据的流向更改了一下

删除文件 
rm test.txt


创建SSH Key
 ssh-keygen -t rsa -C "youremail@example.com"

默认目录
C:\Users\user\.ssh

跟远程仓库进行连接
git remote add origin git@github.com:michaelliao/learngit.git

把本地库的内容推送到远程
 git push -u origin master

-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

创建并切换新分支
$ git checkout -b dev

创建分之
$ git branch dev

切换分之
$ git checkout dev

查看分支
$ git branch

查看远程分支
$ git branch -r

合并分支
$ git merge dev

删除分支
$ git branch -d dev

合并时禁用 fast forward 模式
能留下分支的痕迹
git merge --no-ff -m "merge with no-ff" dev

把当前工作现场临时“储藏”起来
不会放进版本库
git stash

查看临时储藏
git stash list

恢复储藏
git stash apply

删除储藏
git stash drop

推荐用这个:恢复+ 删除储藏
git stash pop

丢弃一个没有被合并过的分支,强行删除。
git branch -D <name>

查看远程库的信息
git remote

查看远程库的信息,查看详细信息,
git remote -v

推送分支
git push origin master
推送另一分支
git push origin dev

获取远程分支
git fetch origin dev

创建与远程分支对应的本地分支
 git checkout -b dev origin/dev(如果没有上一句,这一句会报错.)

创建本地dev 和 origin/dev的连接
$ git branch --set-upstream-to=origin/dev dev





git commit之后进入vim(vi)界面,如何退出 esc , shift + z, 2次

github添加ssh key之后push还要输入账号密码的解决方法 别用http, 用git开头的仓库地址. 用git协议.

我想更改协议,重新设定仓库地址 github常见操作和常见错误!错误提示:fatal: remote origin already exists.

1、先输入 git remote rm origin 2、再输入 git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!

拉取远程分支报错, git 拉取远程分支报错 fatal: ‘origin/dev’ is not a commit and a branch ‘dev’ cannot be created from it

1
2
$ git pull
$ git checkout -b dev origin/dev

git 拉取远程分支到本地 master对应master 分支对应分支.

1
2
3
4
git init
git remote add origin git@github.com:wudimingwo/test4.git
git fetch origin dev
git checkout -b dev origin/dev  (如果没有上面那一句这一句是不会有效果的.)

git 相关常用操作指令 详解git fetch与git pull的区别 git fetch origin dev 相当于获取远程的分支 但不会和本地的分支merge 如果没有相应本地的分支, 也不会自动创建. 而 git pull origin dev 相当于 git fetch + git merge

git checkout 出错原因 (error: pathspec ‘master’ did not match any file(s) known to )