为了完成实验3,我学习了廖雪峰的git教程,不得不说,这个教程很适合初学者,浅显易懂,涉及到了我们将来会用到的
百分之99的git指令,这里给一个传送门!http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
以下是我学习的笔记,没办法,我脑子慢一些,要是大神,一看就懂了,哪里还用记什么笔记!
不过话说回来,不能脑子慢就不当程序猿了啊,嘿嘿
1.git:分布式版本控制系统,每台电脑都是一个版本库,git还是不必联网的
2.核心:git的分支管理
3.git版本库:repository,这个目录下所有文件都可以被git管理起来,每个文件修改删除都可以被git跟踪。
4.注意:如果使用版本控制系统,就要以纯文本编写文件。
5.千万不要使用windows自带的记事本,而要使用notepad++;
6.git status 随时掌握仓库当前的动态
7.提交修改和提交新文件是一样的两步骤,都是先git add 再git commit
8.git 分两个区,工作区,版本区,版本区里有暂存区,利用git add提交的文件就放在暂存区里,利用git commit就是把暂存区内容加入了当前分支。
9.改乱了工作区某个文件,想直接丢弃工作区修改,用命令git checkout -- filename
10.改乱了工作区某个文件,而且已经提交到了暂存区,想丢弃修改,先用git reset HEAD filename,再用git checkout -- filename
11.改乱了并已经提交到版本库,就用版本回退命令。
12.从版本库里删除文件:用git rm filename删掉,然后用git commit,不要忘了后面加入-m说明。
13.git远程仓库:github,免费提供了git仓库的托管服务,要使用github上的远程仓库,先要注册github账号,
还要设置他们之间传输的SSH key,一台电脑就对应一个公钥
14:git远程库的功能:可以从这个仓库克隆出新的仓库,也可以把一个已经有的本地仓库和它相关联,本地仓库的
内容也可以推送到github仓库。
15.建立分支:改变了head的指向,以后每次提交都在延长这个分支。git branch 是列出当前分支。
16.切换回当前分支:git checkout master(改变head指针的指向)
17.合并分支:git merge dev 删除分支:git branch -d name
18.git log --graph 命令可以看到分支的合并图,简略的命令是:git log --graph --pretty=oneline --abbrev-commit
19.实际开发分支管理的基本法:
1.master分支应该很稳定,仅能用来发布新版本,平时不能在上面干活。
2.在dev分支上干活,每个人都有自己分支,时不时向dev 上合并就可以了。
3.往主分支上合并分支时,通常应该用git merge --no-ff <branchname>的式子。
20.bug分支:在哪个分支上修复bug,就从哪个分支上创建临时分支。
21.feature分支:用于添加新功能的分支,要在主分支上创建。如果要
强行删除未合并的分支,就要用git branch -D <branchname>
22.git 远程仓库克隆时,本地的master分支和远程的master分支自动对应起来了,
远程仓库默认的名称是origin。
23.git remote:查看远程库的信息,git remote -v 是显示更为详细的信息。
24:推送分支,把该分支上所有本地提交推送到远程库,推送时要指定本地的分支。
25.master分支必须时刻向远程仓库提交,dev是开发分支,所有成员都要在上面工作,
也需要时刻与远程同步。
26.推送分支和抓取分支:
27.打标签:git tag标签不是按照顺序列出。
28.查看所有标签:git tag,列出标签是按照字母排序的。
29.查看标签对应的信息:git show <tagname>