目录
什么是git?
安装git
创建版本库
工作区和版本库、
向版本库中添加文件
版本回退
远程操作
什么是git?
linux是一个开源软件,第一版本,第二版本不同怎么控制?
SVM就相当于分布式中讲的单点,但分布式版本控制系统没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。他们的代码,资源都相同,就是三个相同的副本。
安装git
1.用git命令查看是否已安装
git --vertion
2.安装
sudo yum install git//centos
sudo apt-get intall git//ubuntu
3 进行配置,指定使用git的账号和用户名
git config --global user.name "Your name"
git config --global user.email "Your email“
创建版本库
版本库又称仓库,仓库中存放被git管理的文件,每个文件的修改、 删除,git都能够跟踪,可以方便追踪历史。
创建仓库方法:
创建成功,多了.git目录,用来跟踪管理版本库的,不能删除!
工作区和版本库、
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
向版本库中添加文件
git add filename
git add --all .//添加所有文件
git commit
版本回退
git status
git diff
查看历史提交信息
git log
git reset
git reset –-hard HEAD^ # 退回后新的不存在了,若git log还存在可用版本号回退git reset –-hard 版本号(来自git log)git reflog # 记录每一次更改,可找到最新版本
再去看zn.txt里面的内容的时候,就是上次的了,因为回退了
reflog 记录每一次修改
撤销修改(删除)1. git checkout -- filename ,回到最近一次git commit或git add时的状态。若未放到暂存区,回到和版本库一样的状态若放到暂存区,则回到添加到暂存区后的状态2. git reset HEAD filename:撤销暂存区中的内容(git add)3. git rm filename:删除提交到版本库中的文件 (错删,则git checkout -- filename从版本库恢复)
远程操作
步骤:登录github(gitee),创建和项目同名repository例如:git remote add origin git@github.com:Coder-Peng/repo_git.gitgit push -u origin master #第一次提交本地库
建立仓库
我已经用学校分的虚拟机上安装了git
设置用户名和邮箱(这里我不明白是不是必须和gitee上的用户名和邮箱对应,因为gitee给的教程是,会问老师)
创建仓库
创建文件-》添加到暂存区(没有输出)-》提交master分支
这是我文件中的内容,我开始回退
因为头指针head一直指向最新的,所以一直回退,我回退到第一次提交的时候了
查看历史修改信息
‘我修改了文件内容,但是我不提交到暂存区更没有提交到分支
撤销(删除)
以此来检验checkout 回到哪里了?
没有放到暂存区,回到了和版本库一样的状态
如果放到了暂存区,也就是使用了add命令了,则回到添加到暂存区之后的状态
让我们来试试吧
以上是我没有提交到暂存区的情况,它回退到了和版本库一样的状态(从版本库拿到最新的版本),也就是我修改的内容“加油复习考试”这句话删除了,不见了
只要我使用了add命令提交到了暂存区,会不会退一点影响都没有,因为他是回退到了添加到暂存区一样的状态
问老师:不明白
远程操作,向gitee上推代码
git remote add origin git@gitee.com:star-insomnia-zhang-na/myproject.git git push -u origin master 第一次提交本地库要选中SSH
你想直接往gitee上推代码,是推不了的,提示的错误也说你没有公钥,
服务器并不能让任何人向我们的git服务器上推送代码,只能让有凭证的人向服务器推送,git本地和gitee服务器之间是通过ssh对称秘钥来完成两者的身份确认的
ssh-keygen -t rsa -C "2091691459@qq.com"通过这个来获取公钥私钥
点击怎样生成公钥,gitee给了详细介绍
查看公钥私钥
这样复制上去公钥是一段一段的 不行 输入的密码是正确的但一直显示指纹不对
解决方法 ----------不太理解这样为啥就行了,
在终端输入
ssh -T git@gitee.com、首次使用需要确认并添加主机到本机SSH可信列表。若返回
Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access.
内容,则证明添加成功。
成功了
不要按照gitee上的帮住手册整部署公钥,这样不能往上推代码,试了好久,耽误了好长时间,把部署公钥删除之后添加公钥
在这里
文章来源:https://www.toymoban.com/news/detail-685529.html
我用了一上午的时间终于完成了向gitee上推程序,你也试试吧,有很多细节需要注意,一定要耐心解决呀文章来源地址https://www.toymoban.com/news/detail-685529.html
到了这里,关于Linux 分布式版本控制系统git,手把手教向gitee上推代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!