[Git/SVN] Gitee使用教程
<h1 id="1-gitee">1 Gitee</h1><blockquote>
<p><code>Gitee</code> 提供免费的 <code>Git</code> 仓库,还集成了代码质量检测、项目演示等功能。<br>
对于团队协作开发,Gitee 还提供了<code>项目管理</code>、<code>代码托管</code>、<code>文档管理</code>的服务,5 人以下小团队免费。</p>
</blockquote>
<h2 id="case1-在idea中拉取gitee仓库代码">CASE1 在IDEA中拉取Gitee仓库代码</h2>
<h3 id="step1-前期准备">Step1 前期准备</h3>
<ul>
<li>Step1.1 本地电脑安装<code>Git</code></li>
</ul>
<blockquote>
<p>https://git-scm.com/</p>
</blockquote>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328223904515-403611310.png">
</center>
<ul>
<li>Step1.2 申请Gitee账号</li>
</ul>
<blockquote>
<p>https://gitee.com/</p>
</blockquote>
<ul>
<li>Step1.3 在<code>Gitee</code>新建仓库(私有 or 公有)</li>
</ul>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328230735189-453562168.png">
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328230819933-259210272.png">
</center>
> 本图摘自网友: 魏一鹤
<blockquote>
<p>创建完成后:</p>
</blockquote>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328230849030-1298901807.png">
</center>
<h3 id="step2-安装插件打开idea-settings-plugins-gitee">Step2 安装插件:打开<code>IDEA</code>-<code>Settings</code>-<code>Plugins</code>-<code>Gitee</code></h3>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328223408385-827336542.png">
</center>
<h3 id="step3-idea-settings-version-control-gitee输入账号密码">Step3 <code>IDEA</code>-<code>Settings</code>-<code>Version Control</code>-<code>Gitee</code>,输入账号、密码</h3>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328230620118-524317705.png">
</center>
<h3 id="step4-idea-vcs-import-into-version-control-share-project-on-gitee">Step4 <code>IDEA</code>-<code>VCS</code>-<code>Import into Version Control</code>-<code>Share Project on Gitee</code></h3>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328231155842-1439750687.png">
</center>
<h3 id="step4-在gitee下载离线源码zip包并解压">Step4 在<code>Gitee</code>下载离线源码Zip包,并解压</h3>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328231635623-1311793723.png">
</center>
<p><img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328231903571-1831121498.png" alt="" loading="lazy"></p>
<blockquote>
<p>可对解压后的文件目录进行重命名。例如:去除<code>-master</code></p>
</blockquote>
<h3 id="step5-idea-open-选中本地目标git仓库目录-ok">Step5 <code>IDEA</code>-<code>Open</code>-(选中本地目标Git仓库目录)-<code>OK</code></h3>
<p><img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328232119364-1900214574.png" alt="" loading="lazy"></p>
<p><img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328231903571-1831121498.png" alt="" loading="lazy"></p>
<h3 id="step6-idea窗口中添加子模块添加新文件">Step6 <code>IDEA</code>窗口中添加子模块、添加新文件</h3>
<blockquote>
<p>例如:在根目录下添加子工程、pom.xml、右键选中<code>As a Maven Project</code>、...</p>
</blockquote>
<p><img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230328232410617-1962602666.png" alt="" loading="lazy"></p>
<h3 id="step6-启用git版本控制集成">Step6 启用GIT版本控制集成</h3>
<ul>
<li>方法1:<code>IDEA</code>-<code>VCS</code>-<code>Enable Version Control Intergration</code>-<code>Git</code></li>
</ul>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230329222556732-627283317.png">
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230329222607247-1269663530.png">
</center>
<ul>
<li>方法2:<code>IDEA</code>-<code>Settings</code>-<code>Version Control</code>-<code>+</code>-<strong>(填写源码地址、VCS=GIT)</strong></li>
</ul>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230329221933673-1157597517.png">
</center>
<h3 id="step7-查验本地git仓库状态">Step7 查验本地git仓库状态</h3>
<pre><code class="language-shell"># 若前面阶段并没有从远程仓库拉代码时:
# git clone git@gitee.com:xxxx-team/xxxx-user-service.git
# cd /xxxx-user-service
git status
</code></pre>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230330005313698-1472676638.png">
</center>
<pre><code class="language-shell">git config --list
git config user.name "xxgitee-namexx"
git config user.email "xxgiteexx@qq.com"
git config --list
ssh-keygen -t rsa -C "xxgiteexx@qq.com"
# innocence-rsa-gitee
## ssh-keygen -m PEM -t rsa -b 4096 -C "xxgiteexx@qq.com"
# 确保如下配置信息无误:
# 作用1:ssh通信时自动识别到.ssh文件夹下非id_rsa/id_dsa/id_ecdsa/id_ed25519/id_xmss的私钥文件名;
# 作用2:便于自动识别不同git远程仓库(github/gitee/gitlab等)需要使用哪个host、哪个用户、哪种认证策略(publickey/password)
C:\Users\{USER_NAME}\.ssh\config
Host gitlab-bigdata.xxxx.cn
HostName gitlab-bigdata.xxxx.cn
Port 22
User xx
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Host github.com
HostName github.com
Port 22
User yy
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
# gitee
Host gitee.com
HostName gitee.com
Port 22
User zz
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gitee
# git@codeup.aliyun.com (阿里云效)
Host codeup.aliyun.com
HostName codeup.aliyun.com
Port 22
User xxxx
PreferredAuthentications publickey
IdentityFile ~/.ssh/aliyun-codeup-34fdew23e
ssh -T git@gitee.com
ssh -v gitee.com -p 443
git config --list
</code></pre>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230330005130253-1045952291.png">
</center>
<h3 id="step8-在gitee配置公钥">Step8 在<code>Gitee</code>配置公钥</h3>
<ul>
<li>本地电脑生成公钥 <code>id_rsa.pub</code></li>
</ul>
<pre><code class="language-shell">ssh -T git@gitee.com
ssh -v gitee.com -p 443
或 ssh -vT git@gitee.com
以此类推:
ssh -vT git@github.com
git config --list
C:\Users\{USER_NAME}\.ssh
</code></pre>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230330005604149-320294722.png">
</center>
<ul>
<li>登录<code>Gitee</code>,<code>(个人头像)</code>-<code>设置</code>-<code>SSH公钥</code>-(填写<code>{标题}</code>、<code>{公钥}</code>)</li>
</ul>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230330005821594-619686922.png">
</center>
<h3 id="step9-为本地git仓库设置远程仓库地址">Step9 为本地GIT仓库设置远程仓库地址</h3>
<blockquote>
<p>此时仍然无法<code>pull</code>代码</p>
<ul>
<li>原因:未挂载远程仓库的分支</li>
</ul>
</blockquote>
<pre><code class="language-shell">$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.
git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:
git branch --set-upstream-to=<remote>/<branch> master
</code></pre>
<center>
<img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230330010429246-21007558.png">
</center>
<ul>
<li>Step9.1 为本地GIT仓库设置远程仓库地址</li>
</ul>
<blockquote>
<p>方式1 使用此种方式可以在本地分支已经追踪了某个远程分支的情况下,修改追踪的远程分支</p>
</blockquote>
<pre><code class="language-shell">git branch --set-upstream-to={远程主机名}/{远程分支名} {本地分支名}
</code></pre>
<blockquote>
<blockquote>
<blockquote>
<p>样例:</p>
</blockquote>
</blockquote>
</blockquote>
<pre><code class="language-shell"># 设置 origin 的 地址 | 在Git中,origin是一个指向远程仓库的指针,它默认指向我们克隆或拉取代码的源仓库
# 情况1
## git remote set-url origin <new-url, eg: https://github.com/my-name/my-repo.git>
git remote set-url origin git@gitee.com:love-connect-team/love-connect-user-service.git
# 情况2
## 运行完后,发现没有显示任何内容,这时候说明你是需要添加,而非修改
## git remote -v
## git remote add origin <远程仓库地址>
git remote add origin git@gitee.com:love-connect-team/love-connect-user-service.git
git branch --set-upstream-to=origin/master master
git branch -av
</code></pre>
<blockquote>
<p>方式2 加上<code>-u</code>参数,这样<code>push</code>时,本地指定分支就和远程主机的<strong>同名分支</strong>建立追踪关系</p>
</blockquote>
<pre><code class="language-shell">git push -u <远程主机名> <本地分支名>
</code></pre>
<blockquote>
<p>方式3 新分支指针指向 <远程主机名>/<远程分支名> 所指的位置</p>
</blockquote>
<pre><code class="language-shell">git checkout -b <本地分支名> <远程主机名>/<远程分支名>
</code></pre>
<ul>
<li>重要技巧</li>
</ul>
<pre><code class="language-shell">git pull
git pull origin master
git pull origin master --allow-unrelated-histories
或
git push -u origin master -f
</code></pre>
<p><img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230330012412952-1467767241.png" alt="" loading="lazy"></p>
<blockquote>
<p>之后就可以随意push、pull了</p>
</blockquote>
<p><img src="https://img2023.cnblogs.com/blog/1173617/202303/1173617-20230330012745783-348116688.png" alt="" loading="lazy"></p>
<h1 id="x-参考文献">X 参考文献</h1>
<ul>
<li>从gitee拉取提交代码到idea - CSDN 【推荐】</li>
<li>使用git+gitee实现在两台电脑数据同步 - CSDN 【推荐】</li>
<li>提交项目到gitee报错Push to origin/master was rejected的解决办法 - 博客园</li>
<li>Git 中阶学习 基础知识深入理解 - CSDN 【推荐】</li>
</ul>
<blockquote>
<p>配置本地同一仓库,可自由推送至不同的云端远程仓库</p>
</blockquote>
<ul>
<li>git设置本地分支追踪远程分支 - CSDN</li>
<li></li>
<li>Git常见错误与操作:error: src refspec master does not match any解决办法 - CSDN</li>
</ul>
<p>https://speedssx.com/user/payment</p>
<h1 id="y-待整理">Y 待整理</h1>
<ul>
<li>Windows管理gitee和GitHub SSH秘钥 - 博客园</li>
<li>https://gitee.com/profile/sshkeys</li>
<li>在给远程仓库推送本地项目时,报错:error: No such remote ‘origin‘,解决方案 - CSDN</li>
<li>如何在Git上修改origin - php.cn</li>
<li>远程分支管理推送与拉取仓库变化详解 git push origin branch命令详解 git branch -vv git fetch git pull - CSDN</li>
<li>git fatal: branch ‘master‘ does not exist - CSDN</li>
</ul>
</div>
<div id="MySignature" role="contentinfo">
<div class="essaySuffix-box">
<div class="essaySuffix-box-left" style=" margin: 6px auto; ">
<img src="https://blog-static.cnblogs.com/files/johnnyzen/cnblogs-qq-group-qrcode.gif?t=1679679148" alt="QQ沟通交流群" onload="changeImg(this,200,100)">
</div>
<div class="essaySuffix-box-right">
<span class="essaySuffix-right-title">本文作者</span>:
<strong><span>千千寰宇</span></strong>
<br>
<span style="font-weight: bold; white-space:nowrap;">本文链接</span>:
https://www.cnblogs.com/johnnyzen
<br>
<span class="essaySuffix-right-title">关于博文</span>:评论和私信会在第一时间回复,或直接私信我。
<br>
<span class="essaySuffix-right-title">版权声明</span>:本博客所有文章除特别声明外,均采用 BY-NC-SA
许可协议。转载请注明出处!<br>
<span class="essaySuffix-right-title">日常交流</span>:大数据与软件开发-QQ交流群: 774386015<strong>
<span style="color: #ff0000; font-size: 12pt;">【入群二维码】</span></strong>参见左下角。您的支持、鼓励<span style="color: #ff0000; font-size: 12pt;"></span>是博主技术写作的重要动力!
<br>
</div>
<div style="clear: both;">
</div>
</div><br><br>
来源:https://www.cnblogs.com/johnnyzen/p/17267095.html
頁:
[1]