关于这几天的git学习
Posted nomanisaisland
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于这几天的git学习相关的知识,希望对你有一定的参考价值。
这两天试操了一下git工具,有所领悟
首先我们需要明白git是什么,Git是目前世界上最先进的分布式版本控制系统(没有之一),这个是廖雪峰大神对git的概括。
其实我们可以把git看做是一个软件,一个强大的版本记录软件。
首先安装git,安装完后git init 初始化项目,使项目中出现一个.git的隐藏文件,隐藏文件可以用ll -la查看,然后就是设置签名,这个随意,只是用来区分开发者的,设置好后信息会保存在.git/config,项目级别签名:git config user.name [name] ,git config user.email [email] 。
设置好签名后,就可以在该项目目录下添加项目文件了,添加后用git add [file name] 将文件添加进暂存区,然后上传到本地库 git commit -m "commit log" [file name] ,-m后面是提交的日志内容。可以用git status查看工作区和暂存区的状态。可以用git rm -cached [file name]将文件移出暂存区,git reflog 查看所有日志。
git reset --hard(参数) [索引值],这个命令可以控制当前访问版本,索引值为哈希值(最前方的一串字母),HEAD为指针,指针对于的是项目分支,这个可以看作是一个浏览器的不同窗口,各做各的,互不干扰。误删后需要找回误删版本内容也可以用这个命令,前提是需要提交到本地库,否则会没有记录
git diff[file name] 可以比较工作区和暂存区的同一个文件的内容是否有变
git branch[分支名],创建分支,git branch -v 查看分支,git checkout[分支名]切换分支,git merge[需要被合并的分支]合并两个分支(两个分支修改的内容部位相同是会产生冲突),解决冲突的方法:进入合并后的文件,把冲突内容协商修复即可,然后再提交到暂存区、工作区(提交的时候无需文件名)
提交到远程库:先在gitHub创建一个远程库,邀请组员,使用git push origin master将项目推送到远程库,使用git fetch[远程库地址别名][远程分支名]把远程库文件拉取到本地(不改变本地库文件内容),可以使用merge合并内容(也可能会有冲突,解决方法同上)
开源项目提交源码的话,需要fock一下,创建自己的远程库,其他地方和以上操作类似,远程库内容编辑好后pull request 给项目作者,等待审核即可
git的工作图:
此外gitLab服务器的搭建学习也是有必要的,安装教程百度即可,具体操作和git类似。
以上只是大概轮廓,后续有时间再做详细总结,有错误希望帮忙指出,谢谢
以上是关于关于这几天的git学习的主要内容,如果未能解决你的问题,请参考以下文章