一、注册Gitee,创建远程仓库
注册网址:登录 - Gitee.com
打开Gitee,注册完进行登录,点击右上角【+】创建一个仓库
新建仓库:
点击创建,仓库创建完毕。
二、下载Git安装包,并创建本地仓库
下载网址:Git - Downloads
等待下载完成,打开安装,可以使用默认的配置一直点Next即可。
1.创建本地仓库
其实本质上就是创建一个文件夹,只是在Git有一个高大上的名字叫仓库。事实上,也是有一点不同的,就是仓库需要通过一些配置才可以和远程仓库关联上。
假设我在自己电脑windows平台上创建一个文件夹gitee用来存放所有的仓库,即:
E:\2023second project\gitee
2.配置ssh key,关联本地和远程仓库
上文中本地仓库和远程仓库都准备好了,现在就是打通二者的关联。在刚刚创建的gitee文件夹里右键点击Open Git Bash here
先做一下简单的配置:
git init #初始化本地仓库
git config --global user.name "【你的用户名】" #声明操作的用户名字,会出现在提交记录中
git config --global user.email "【你的邮箱】" #声明操作的用户邮箱,会出现在提交记录中
提示:Git Bash的复制快捷键是Ctrl+insert,粘贴是shift+insert。
接着生成密钥,中间会有一个询问过程,全部敲enter键,一般是有3次。
bash
ssh-keygen -t rsa -C "【你的邮箱】" #生成密钥ssh
红框后面就是生成的公钥位置
接下来用cat命令查看对应文件内容,以下命令会返回公钥内容,复制添加到gitee上就可以进行联通了。登录Gitee后点击头像->设置->ssh公钥,根据提示粘贴链接并取个名字备忘。
bash
cat /c/Users/Administrator/.ssh/id_rsa.pub #查看公钥,注意改为自己的路径
添加完公钥确定,然后回到Git Bash,输入一下命令查看是否添加成功,中间需要输入一次yes。
bash
ssh -T git@gitee.com #查看是否添加成功
连接远程仓库,复制刚刚创建的远程仓库链接:
执行如下命令,把ssz-ssz改为自己的用户名,把401_second_project改为自己的仓库:
bash
git remote add origin https://gitee.com/ssz-ssz/401_second_project.git #链接远程仓库origin
接下来可以使用一下命令查看连接的远程仓库地址:
bash
git remote -v #查看连接的远程仓库
至此,完成基本环境的搭建。
三、ubuntu端上传文件
1.创建本地仓库,配置git
其中ubuntu端配置git环境和windows端基本一致,命令如下:
bash
#若没有git,安装git
sudo apt-get update
sudo apt-get install git
#创建401_gitee文件夹,把要上传的代码拷贝到这个文件夹
cd 401_gitee
git init #初始化仓库
git config --global user.name "【自己用户名】" #声明操作的用户名字,会出现在提交记录中
git config --global user.email "【自己邮箱】" #声明操作的用户邮箱,会出现在提交记录中
ssh-keygen -t rsa -C "自己邮箱" #生成密钥ssh
cat /home/txz/.ssh/id_rsa.pub # 查看公钥,注意改为自己的路径
ssh -T git@gitee.com #查看是否添加ssh成功,注意要输入一个yes
git remote add origin https://gitee.com/ssz-ssz/401_second_project.git #连接远程库origin
git remote -v #查看连接的远程库地址
2.提交本地文件
git pull
和git clone
都是用于与远程仓库交互的Git命令,但它们的用途和行为有所不同:
git clone
是用来克隆 一个远程仓库的命令。它会创建一个新的目录,初始化一个.git
目录,拉取远程仓库的所有数据,创建一个指向远程仓库的origin
的远程跟踪分支,并在本地创建一个master
分支作为origin
的一个副本。这个命令通常只在你第一次获取远程仓库时使用。
git pull
则是用来更新 本地仓库的命令。它实际上是git fetch
和git merge
的组合,即它会拉取远程仓库的新数据(git fetch
),然后将这些新数据合并到你当前的工作分支中(git merge
)。这个命令用于已经克隆过的仓库,当你想要获取最新的更改时使用。简而言之,
git clone
用于初次复制仓库,而**git pull
用于已克隆的仓库同步最新更改**。因此,git pull
不能用git clone
来代替,因为**git clone
会创建一个全新的仓库副本**,而不是更新现有的工作副本。如果你在一个已经克隆的仓库中使用git clone
,它会在你的本地创建一个新的仓库目录,这并不是更新操作。
将仓库里面的readme文件全部删除,把项目文件全部拷贝到401_second_project文件夹中
bash
git add 401_second_project/* #将工作区文件提交到暂存区
git commit -m "提交最原始文件" #将暂存区文件提交到本地版本库
git push -u origin master #推送到远程库,首次需要-u,之后可以省略,master为分支名
此时在远端仓库就可以看到推送的文件:
此后想在本地工作区修改代码文件,创建一个分支second_coputer,其不回影响主干分支:
bash
git branch second_computer #创建分支second_computer
git checkout second_computer #切换分支
cd 401_second_project/ #进入要修改的文件夹
gedit ReadMe.txt #修改文件内容
git add ReadMe.txt #将工作区文件提交到暂存区
git commit -m "second_computer:加入测试文本" #将暂存区文件提交到版本库
#如果此时发现提交到版本库的东西还要改,则执行命令git reset --soft HEAD^撤销上次提交
git checkout master #再次切换到master分支
git merge second_computer #合并second_computer到主分支
git push origin master #把主分支推送到远程库
如果远程仓库通过别人对文件进行了修改,ubuntu端想要获取最新文件则执行如下命令
bash
git pull origin #拉取远程库文件并合并到本地仓库
或者
git fetch origin #拉取远程库文件
git merge origin/master #合并到本地仓库,将origin合并到本地指定分支
四、windows端下载ubuntu提交到gitee上面的代码并修改,然后提交
bash
mkdir gitee #首先创建一个想要放工程的文件夹
cd gitee
git clone https://gitee.com/ssz-ssz/401_second_project.git #把远程仓库文件克隆到这个文件夹
以后想同步远程仓库文件
bash
git pull origin #拉取远程库文件并合并到本地
当然也可以对文件进行修改然后上传到远程仓库,步骤和ubuntu端修改文件一样,也要创建一个分支,防止影响主干程序。