http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
常用知识整理:
回退:
HEAD
指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令
git reset --hard commit_id
。
穿梭前,用
git log
可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用
git reflog
查看命令历史,以便确定要回到未来的哪个版本。
撤销:
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令
git checkout -- file
。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令
git reset HEAD file
,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考
版本回退一节,不过前提是没有推送到远程库。
删除:
命令
git rm
用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失
最近一次提交后你修改的内容。
远程仓库:
·github(公开的,任何人皆可查看,除非交费)
1、注册github账号
2、创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有
id_rsa
和
id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com
”
(
id_rsa
是私钥,不能泄露出去,
id_rsa.pub
是公钥,可以放心地告诉任何人。
)
3、登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub
文件的内容
·自己搭建git服务器(私有的)
关联远程仓库:
关联一个远程仓库:git remote add origin git@server-name:path/repo-name.git
关联后,第一次推送master分支的所有内容:git push -u origin master
此后,需push的时候:git push origin master
克隆:
git clone 地址(https 或 git)
分支:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
查看分支合并图:git log —graph
(git merge —no-ff -m “message” 分支名
合并分支时,加上
--no-ff
参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward
合并就看不出来曾经做过合并。)