Git 学会git,探索GitHub,掌握新知识
Posted IT_Holmes
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git 学会git,探索GitHub,掌握新知识 相关的知识,希望对你有一定的参考价值。
1.分支管理
分支就是在版本控制的过程中,同时进行多个任务的推进。
一般最开始都是master项目,并且并行创建分支,来研发项目。
执行git status命令时,就有On branch master,意思就是在master这个分支上面。
2.分支命令
2.1 git branch
2.1.1 git branch 创建
使用git branch来创建分支
2.1.2 git branch -v 查看
使用 -v 参数来显示查看所有分支。
2.2 git checkout [branch_name] 切换
使用git checkout [branch_name]命令来进行切换分支。
2.3 git merge [branch_name] 合并
1.切换到接受修改的分支上面。
2.执行git merge [branch_name]命令即可。
2.4 分支冲突
因为在同一个文件,同一行数据可能不同,那就导致了究竟选择哪一个分支的数据呢?这就是分支冲突。
一般出现(master|MERGING),表示正在合并中。
在发生冲突情况下,分支合并后,会出现像下面代码一样的情况,这就时自己要决定的内容,HEAD指的是当前分支。
最后自己修改代码,解决冲突时,最好执行git add和git commit 来对修改的文件上传提交一下,这样就解决了merge合并冲突的问题了。
注意:提交的时候commit不能有文件名,否则会提交失败。
3.哈希算法
哈希是一个系列的加密算法,虽然有很多不同的哈希算法,但都遵循下面的几个共同点:
哈希算法是用来 比对和验证文件是否变化,不一样,对于git而言很重要。
这里可以使用Hash软件的校验工具可以计算文件的 MD5、SHA1、CRC32 的值,来操作校验。
4.git版本管理机制
git采用的是快照流来对每个版本文件进行存储和管理,每一个快照忽悠一个parent指针指向父对象。
5.git分支管理机制
和版本管理一样也是通过HEAD指针来切换分支什么的。
6.github
6.1 git remote 远程
使用git remote来操控远程库。
6.1.1 git remote -v
-v 参数显示所有的远程库。
6.1.2 git remote add [别名] 远程库url地址
给远程库添加一个别名,方便推送和获得。
6.1.3 git push [别名] [branch_name]
例如:git push origin master
这里需要输入用户和密码,来验证!!
6.1.4 使用 + 号强制push
强制push,就是在分支前面加上 + 号。
例如:
git push origin +master
6.2 git clone 克隆
6.2.1 git clone [远程库URL]
使用git clone [远程库URL]克隆很重要!
可以可以帮我们完成三个步骤:
1.完整的远程库下载到本地中。
2.将下载下来的文件,自动初始化本地库
3.创建该远程地址的别名(origin)。
7.github其他账户来操作自己仓库的项目
在执行git push origin master来验证输入密码时,让别的用户来操作,就需要在github项目中添加团队合作人。
在项目setting ==》Manage access ==》Invite a collaborator来邀请一个github账户,从而共同开发项目。
注意:有时win10可能会记住密码,这是因为win10有一个Windows凭据的功能,如下:
8. git pull 抓取和合并
fetch(抓取)和merge(合并)方法加起来就是pull。
fetch抓取只是将远程的数据抓取到了本地库中,工作区并没有修改合并,想要合并在使用merge代码就可以了。
比如,我们抓取和合并远程origin的例子:
git fetch origin master (抓取远程origin上的master分支。)
git checkout origin/master (切换本地库的origin的master查看是否抓取到。)
git merge origin/master(合并本地库的origin上的master分支。)
而:pull = fetch + merge
这里什么时候使用fetch,merge;什么时候使用pull要根据实际情况来。
以上是关于Git 学会git,探索GitHub,掌握新知识 的主要内容,如果未能解决你的问题,请参考以下文章