这几天在公司,同事都在使用Gitee上传项目,进行同步,我也进行了简单学习了解了一下版本控制软件Git,挺不错的,故写个笔记记录一下。
本篇博文主要涉及的内容:
1,本地写代码,通过Git同步到本地
2,写完的项目通过Git上传至Gitee仓库
3,将Gitee仓库里面的项目巴拉到本地
PS:Git是本地的版本管理工具,Gitee是远程仓库
深吸一口气,静下心来耐心看完,我相信你一定会有所收获的!
一、本地使用Git进行同步
1,咳咳,先让我吧啦两句
当有一个项目让你修改,你会先把这个项目打包一下,然后再进行处理,若项目崩了,然后可以把压缩包解压还原成之前的项目。
就此为止,你已经会领悟到Git的精髓了!!!恭喜恭喜,撒花~~
啥是
Git
?问了下Kimi,巴拉巴拉了一堆,也就是一个
版本控制系统
,它的作用就是管理项目的不同版本。
打个比方:
你现在把一个项目v1版本通过Git进行了同步,然后你接着开发项目,乱改一通,完了,项目整崩溃了,你想回退到刚开始的v1版本,此时可以通过Git同步一下,就可以将项目同步至最后一次通过Git提交的项目。
2,安装Git
我就不废话了,官网下载,一路Next即可,也可以找博文看下安装教程,这里不是重点,略
git官网链接
3,选择要进行本地同步的文件夹
例如,在yy_git_test文件夹下有一个项目文件夹my_project,现在要同步这里面的内容,假如里面有一个main.cpp文件
main.cpp啥也没有,是一个空文件!仅用来测试使用
①在项目统计文件夹下
右击
空白处,选择
Open Git Bash here
像这样,记得看下路径是不是你想要的哈,我这里是
e:/yy_git_test
②配置用户名和邮箱
git config --global user.name beyondyanyu
git config --global user.email [email protected]
这里的beyondyanyu用户名随便填,xxxxxx@qq.com邮箱也是随便填
你提交项目之后,通过参看提交日志,就会显示用户名和邮箱,显示的就是你填的这个哈
③初始化项目文件夹——
git init
命令:
git init
运行完之后,会出现一个隐藏文件夹
.git
,这就表明该文件夹算是被git接管了,这个
.git
文件夹别乱动!乖,别皮
④设置当前文件夹内的所有文件为提交状态——git add .
⑤填写备注信息并提交——
git commit -m "此处填写备注信息"
命令举例:
git commit -m "this is a test""
好了,你把你的项目已经上传到本地了
⑥查看提交历史信息——
git log
命令:
git log
⑦回退某个文件——
git checkout HEAD xxx.xx
现在我们对这个空文件夹main.cpp进行回退测试
我们现在对这个main.cpp随便加点内容,表示经过了修改
cd my_project
,进入到my_project文件夹下,因为main.cpp在该文件夹里面
命令举例:
git checkout HEAD main.cpp
再看下这个文件夹,发现内容被修改了
又变成了之前上传的空文件了,测试完成
补充④ 设置单个文件为提交状态——git add xxx.xx
我再重新创建一个文件
a.txt
,然后就只上传该文件
命令举例:
git add a.txt
与⑤一样,进行填写备注并提交——
git commit -m "备注信息"
命令举例:
git commit -m "only one file a.txt"
⑧显示对应字符串的文件名称——
git show [log所显示的字符串信息] --stat
,搭配步骤⑥使用
首先显示提交历史信息,命令:
git log
假如我们想看一下53a059b9b3a6582c32694fd9cd3这次提交的内容都有些啥
命令举例:
git show 53a059b9b3a6582c32694fd9cd3c27744900940f --stat
⑨显示提交的全部文件——
git log --name-only
与
git log
区别在于,这个会显示每次提交的内容
⑩删除本地仓库内的文件和文件夹
1,删除本地仓库文件同时将本地副本也进行删除:git rm filename
我这里以删除本地仓库里面的main.cpp文件举例,
git rm main.cpp
同时也会将本地的main.cpp给删除掉
2,删除本地仓库文件并保留本地副本:git rm --cached filename
我这里以删除本地仓库里面的a.txt文件举例,
git rm --cached a.txt
4,补充
①设置Git字体大小
右击Logo,选择Options…
选择Text,再选择Select…,设置字体,然后重启Git即可生效
②下载GitHub或者Gitee上的源码
假如我相中了一个项目
点击
克隆/下载
,选择
HTTPS
,复制命令
在本地找个要下载到的位置,打开本地Git,运行复制的命令即可
例如:
git clone https://gitee.com/beyondyanyu/my_project.git
就会将my_project这个项目给下载到
E:\yy_git_test
下
5,总结步骤
首先,注册用户名和邮箱
然后,
初始化
要托管的文件夹
再次,设置为
准备提交状态
,提交到暂存区中
最后,
填写备注并提交
二、本地项目上传至Gitee,别问为啥不是Github上!![/脸黑]
1,配置Gitee仓库
首先登录gitee,选择新建仓库
我这里创建一个名为my_Project的仓库,Readme文件要选上
因为我没啥版本可言,故选择单分支模型
git@gitee.com:beyondyanyu/my_project.git,这个是你的仓库链接
下面俩是为确保你提交的代码身份被 Gitee 正确识别,要完成的配置
git config --global user.name 'YanYu'
git config --global user.email '[email protected]'
在此之前要生成密钥,命令为:
ssh-keygen -t rsa
然后获取密钥,命令为:
cat ~/.ssh/id_rsa.pub
①生成RSA密钥
命令:
ssh-keygen -t rsa
②获取 RSA 公钥内容,并配置到SSH公钥中
命令:
cat ~/.ssh/id_rsa.pub
在Gitee的仓库上,选择
管理
,选择
添加个人公钥
,这里是个坑,要留意下!!!
会跳转到一个新的页面,在这个页面里面输入密钥
并且需要你输入Gitee的密码进行校验才行
像这样
③配置用户名和邮箱
运行从Gitee上获取到的这两行命令
git config --global user.name 'YanYu'
git config --global user.email '[email protected]'
④关联Gitee仓库
点击
克隆/下载
,在
HTTPS
里面找到该命令,复制一下
https://gitee.com/beyondyanyu/my_project.git
运行从Gitee上获取到的这一行与仓库关联的命令:
git remote add origin 你的HTTPS地址
命令举例:
git remote add origin https://gitee.com/beyondyanyu/my_project.git
就此配置Gitee仓库已经完成
2,上传本地仓库内容至Gitee的仓库
回到我们本地电脑上,在
E:\yy_git_test\my_project
下面有个
a.txt
文件,我们把它上传到Gitee仓库中
①打开Git
②本地关联Gitee仓库
命令:
git remote add origin 你仓库的链接
举例:
git remote add origin [email protected]:beyondyanyu/my_project.git
报错:error: remote origin already exists.
分析:本地仓库已经关联了一个名为
origin
的远程仓库
解决:
Ⅰ 查看远程仓库都有哪些
git remote -v
Ⅱ 删除
origin
这个远程仓库
git remote rm origin
远程主机为
origin
再次关联Gitee仓库,
git remote add origin [email protected]:beyondyanyu/my_project.git
,不报错即可
③提交到Gitee仓库中
因为刚才关联了Gitee仓库,故直接和本地使用Git进行同步即可
先将当前文件夹内的所有文件设置为
提交状态
:
git add .
再填写备注信息并提交:
git commit -m "备注信息内容"
,例如
git commit -m "this is a test"
接下来开始往Gitee上推了,可以看到
远程仓库分支
为
master
,一般情况默认都是这个
④本地项目推送到Gitee仓库中
命令:
git push -u <远程主机名> <远程分支名>
例如:
git push -u origin master
报错:
! [rejected] master -> master (non-fast-forward)
原因:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去
解决:强推,用你本地的代码替代git仓库内的内容!
此方法仅限于新仓库,仓库里面啥也没有的情况哈
命令:
git push -f origin master
刷新一下Gitee,可以看到把本地yy_git_test文件夹下的所有文件都上传到云端Gitee仓库中了,其中my_project文件夹下有个a.txt文件
3,将Gitee上的仓库拉到本地
命令:
git pull origin master
因为在上面我们进行了仓库关联,本地已经和远程的仓库通过SSH密钥进行相关联了,故这里只需要pull下来就行
在
E:\yy_git_test\my_project
下看看
好好好,啥也没!!!
原因:暂存区有东西,也就是
git add .
操作的时候没后续了
解决:
Ⅰ 取消暂存区内容:
git reset HEAD .
Ⅱ 取消还未加入暂存区的内容
git checkout .
三、总结(即:让我拉吧两句 )
就此,博文实现了
本地使用Git进行同步
以及
本地项目上传至Gitee仓库
并且
将Gitee上的仓库拉到本地
,差不多这些就够平常的使用了
整理了两个晚上,网上的某些博文有的有错误,emmm,本博文是一步一步调试成功后进行撰写,不求别的,留个笔记将来复习使用
若本博文有幸帮助到了某人,本人深感荣幸
加油,少一些功利主义的追求,多一些不为什么的坚持!
版权归原作者 beyond谚语 所有, 如有侵权,请联系我们删除。