上传项目代码到Github|Gitee
<svg xmlns="http://www.w3.org/2000/svg" style="display: none"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0)"></path>
</svg>
<h1>上传项目代码到Github|Gitee</h1>
<p></p>
<div class="toc">
<h3>文章目录</h3>
<ul><li>上传项目代码到Github|Gitee</li><li><ul><li>1、前置准备</li><li><ul><li>1.1 Git 安装</li><li>1.2 在 Git 中设置用户名</li><li><ul><li>1.2.1 为计算机上的每个存储库设置 Git 用户名</li><li>1.2.2 为一个仓库设置 Git 用户名</li></ul>
</li><li>1.3 SSH免密登录</li><li>1.4 Github创建一个新的仓库</li></ul>
</li><li>2、上传项目</li><li><ul><li>2.1 初始化本地库</li><li>2.2 添加远程仓库到本地</li><li>2.3 查看本地库状态</li><li>2.4 添加暂存区</li><li>2.4 提交本地库</li><li>2.6 推送本地分支到远程仓库</li></ul>
</li><li>3、上传到已有的仓库</li></ul>
</li></ul>
</div>
<p></p>
<hr>
<p><img src="https://img-blog.csdnimg.cn/55afc57e39514995a7ea5f01caa494b4.jpeg#pic_center" alt="在这里插入图片描述"></p>
<hr>
<h2>1、前置准备</h2>
<h3>1.1 Git 安装</h3>
<blockquote>
<p>官网地址: https://git-scm.com/</p>
</blockquote>
<ul><li>查看 GNU 协议,可以直接点击下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/e322f9ff516643709793c3bd609d7c79.png" alt="图片1"></p>
<ul><li>Git 安装位置,要求是非中文并且没有空格的目录,然后下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/7e8d4a2d4d374540b993c2eb4434b537.png" alt="图片2"></p>
<ul><li>Git 选项配置,推荐默认设置,然后下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/34996e5273b54196adfbd1130bf92c5e.png" alt="图片3"></p>
<ul><li>Git 安装目录名,不用修改,直接点击下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/a3585368c3404e74b3e13df7f039c3d6.png" alt="图片4"></p>
<ul><li>Git 的默认编辑器,建议使用默认的 Vim 编辑器,然后点击下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/a3c5123451eb4f238cb5f5fb584a5424.png" alt="图片5"></p>
<ul><li>分支名设置,选择让 Git 决定,分支名默认为 master,下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/8d08ccdc5b034338b17ec3edbc8a9dfd.png" alt="图片6"></p>
<ul><li>修改 Git 的环境变量,选第一个,不修改环境变量,只在 Git Bash 里使用 Git。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/071f2900dd7d42a997cf793a8cc9ad8f.png" alt="图片7"></p>
<ul><li>后台客户端连接协议,选默认值 OpenSSL,然后下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/e1db542761804b979307a455e157185f.png" alt="图片8"></p>
<ul><li>配置 Git 文件的行末换行符,Windows 使用 CRLF,Linux 使用 LF,选择第一个自动转换,然后继续下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/a947bac363cf40909bbdb76c278765e9.png" alt="图片9"></p>
<ul><li>Git 终端类型,选择默认的 Git Bash 终端,然后继续下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/4f0a8554691342a9bf055ded1a5dbe8d.png" alt="图片10"></p>
<ul><li>Git pull 合并的模式,选择默认,然后下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/520031668cd3491f8d798e138ee1a1a7.png" alt="图片"></p>
<ul><li>选择 Git 的凭据管理器,选择默认的跨平台的凭据管理器,然后下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/f0dcf27d6ca14b69ab48d55f2d3b53c2.png" alt="图片"></p>
<ul><li>其他配置,选择默认设置,然后下一步。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/0dd97b004814410093e92b23cdbb6083.png" alt="图片"></p>
<ul><li>实验室功能,技术还不成熟,有已知的 bug,不要勾选,然后点击右下角的 Install 按钮,开始安装 Git。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/802add22b6ed4baaba66ea494b2ac12b.png" alt="图片"></p>
<blockquote>
<p>点击 Finsh 按钮,Git 安装成功!</p>
</blockquote>
<p><img src="https://img-blog.csdnimg.cn/e674f7691556402eae20dad5322914da.png" alt="在这里插入图片描述"></p>
<ul><li>右键任意位置,在右键菜单里选择 Git Bash Here 即可打开 Git Bash 命令行终端。</li></ul>
<p><img src="https://img-blog.csdnimg.cn/b7fdb5ca855e4f5f9271563099b1c8f5.png" alt="图片"></p>
<blockquote>
<p>在 Git Bash 终端里输入 git --version 查看 git 版本,如图所示,说明 Git 安装成功。</p>
</blockquote>
<p><img src="https://img-blog.csdnimg.cn/f25602328fc64fe3b39f6972b56ec940.png" alt="图片"></p>
<h3>1.2 在 Git 中设置用户名</h3>
<h4>1.2.1 为计算机上的每个存储库设置 Git 用户名</h4>
<blockquote>
<p>Git 使用用户名将提交与身份关联。 Git 用户名与您的 GitHub 用户名不同。</p>
</blockquote>
<p>设置用户签名基本语法,示例如下:</p>
<pre><code class="prism language-shell">Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 <span class="token punctuation">(</span>master<span class="token punctuation">)</span>
$ <span class="token function">git</span> config <span class="token parameter variable">--global</span> user.name Layne
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 <span class="token punctuation">(</span>master<span class="token punctuation">)</span> $ <span class="token function">git</span> config <span class="token parameter variable">--global</span> user.email Layne@atguigu.com
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 <span class="token punctuation">(</span>master<span class="token punctuation">)</span>
$ <span class="token function">cat</span> ~/.gitconfig
<span class="token punctuation">[</span>user<span class="token punctuation">]</span>name <span class="token operator">=</span> Layne
email <span class="token operator">=</span> Layne@atguigu.com
</code></pre>
<p>签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。</p>
<blockquote>
<p>Git 首次安装必须设置一下用户签名,否则无法提交代码。</p>
</blockquote>
<h4>1.2.2 为一个仓库设置 Git 用户名</h4>
<blockquote>
<p>将当前工作目录更改为您想要在其中配置与 Git 提交关联的名称的本地仓库。</p>
</blockquote>
<ul><li>设置 Git 用户名:</li></ul>
<pre><code>$ git config user.name "7&"
</code></pre>
<ul><li>确认您正确设置了 Git 用户名:</li></ul>
<pre><code>$ git config user.name
> 7&
</code></pre>
<h3>1.3 SSH免密登录</h3>
<blockquote>
<p>我们可以看到远程仓库中有一个 SSH 的地址,因此我们也可以使用 SSH 进行访问。</p>
</blockquote>
<p><img src="https://img-blog.csdnimg.cn/a1c52f446f294810a4ef75e4b76c6ba5.png" alt="图片1"></p>
<p>具体操作如下:</p>
<pre><code>--进入当前用户的家目录
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ cd
--删除.ssh目录
Layne@LAPTOP-Layne MINGW64 ~
$ rm -rvf .ssh removed '.ssh/known_hosts'
removed directory '.ssh'
--运行命令生成.ssh秘钥目录[注意:这里-C这个参数是大写的C]
Layne@LAPTOP-Layne MINGW64 ~
$ ssh-keygen -t rsa -C atguiguyueyue@aliyun.com
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Layne/.ssh/id_rsa):
Created directory '/c/Users/Layne/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Layne/.ssh/id_rsa.
Your public key has been saved in /c/Users/Layne/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:7CPfRLITKcYDhaqpEDeok7Atvwh2reRmpxxOC6dkY44 atguiguyueyue@aliyun.com
The key's randomart image is:
+-------+
| .. |
| .. |
| . .. |
|+ +o . . |
|oO .= S . |
|X . .. + = |
|+@ * .. = . |
|X.&o+. o = |
|Eo+Oo . . |
+---------+
--进入.ssh目录查看文件列表
Layne@LAPTOP-Layne MINGW64 ~
$ cd .ssh
Layne@LAPTOP-Layne MINGW64 ~/.ssh
$ ll -a total 21 drwxr-xr-x 1 Layne 197609 0 11月 25 19:27 ./ drwxr-xr-x 1 Layne 197609 0 11月 25 19:27 ../
-rw-r--r-- 1 Layne 197609 1679 11月 25 19:27 id_rsa
-rw-r--r-- 1 Layne 197609406 11月 25 19:27 id_rsa.pub
--查看id_rsa.pub文件内容
Layne@LAPTOP-Layne MINGW64 ~/.ssh
$ cat id_rsa.pub
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABAQDRXRsk9Ohtg1AXLltsuNRAGBsx3ypE1O1Rkdzpm l1woa6y6G62lZri3XtCH0F7GQvnMvQtPISJFXXWo+jFHZmqYQa/6kOIMv2sszcoj2Qtwl lGXTPn/4T2h/cHjSHfc+ks8OYP7OWOOefpOCbYY/7DWYrl89k7nQlfd+A1FV/vQmcsa1L P5ihqjpjms2CoUUen8kZHbjwHBAHQHWRE+Vc371MG/dwINvCi8n7ibI86o2k0dW0+8SL+ svPV/Y0G9m+RAqgec8b9U6DcSSAMH5uq4UWfnAcUNagb/aJQLytrH0pLa8nMv3XdSGNNo
AGBFeW2+K81XrmkP27FrLI6lDef atguiguyueyue@aliyun.com
</code></pre>
<p>复制 id_rsa.pub 文件内容,登录 GitHub,点击用户头像→Settings→SSH and GPG keys</p>
<p><img src="https://img-blog.csdnimg.cn/88934567f9f14647982fcfef2f810cba.png" alt="图片2"></p>
<p><img src="https://img-blog.csdnimg.cn/cafa987b9b634d7fa2f4a2aaff1a96e8.png" alt="图片3"></p>
<p><img src="https://img-blog.csdnimg.cn/529a1603d69e45e99b69cdf2ec5bc823.png" alt="图片4"></p>
<blockquote>
<p>接下来再往远程仓库 push 东西的时候使用 SSH 连接就不需要登录了。</p>
</blockquote>
<h3>1.4 Github创建一个新的仓库</h3>
<blockquote>
<p>操作简单,此处不演示</p>
</blockquote>
<h2>2、上传项目</h2>
<h3>2.1 初始化本地库</h3>
<blockquote>
<p>在需要上传的文件目录中,执行以下初始化命令</p>
</blockquote>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720
$ git init
Initialized empty Git repository in D:/Git-Space/SH0720/.git/
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ ll -a total 4 drwxr-xr-x 1 Layne 197609 0 11月 25 14:07 ./ drwxr-xr-x 1 Layne 197609 0 11月 25 14:07 ../
drwxr-xr-x 1 Layne 197609 0 11月 25 14:07 .git/
</code></pre>
<p><code>.git</code> 初始化的效果,生成git</p>
<h3>2.2 添加远程仓库到本地</h3>
<ul><li>基本语法</li></ul>
<pre><code>git remote -v 查看当前所有远程地址别名
git remote add 别名 远程地址
</code></pre>
<ul><li>案例实操</li></ul>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master) $ git remote -v
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git remote add origin https://github.com/shadowlim/course_design.git
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git remote -v
ori https://github.com/atguiguyueyue/git-shTest.git (fetch) ori https://github.com/atguiguyueyue/git-shTest.git (push)
</code></pre>
<h3>2.3 查看本地库状态</h3>
<ul><li>首次查看(工作区没有任何文件)</li></ul>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master) $ git status
On branch master
No commits yet
nothing to commit (create/copy files and use "git add" to track)
</code></pre>
<ul><li>新增文件之后再次查看状态,检测到未追踪的文件</li></ul>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ vim hello.txt
hello git!
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
hello.txt
nothing added to commit but untracked files present (use "git add" to track)
</code></pre>
<h3>2.4 添加暂存区</h3>
<ul><li>将工作区的文件添加到暂存区</li></ul>
<blockquote>
<p>git add 文件名</p>
</blockquote>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git add hello.txt warning: LF will be replaced by CRLF in hello.txt.
The file will have its original line endings in your working directory.
</code></pre>
<ul><li>查看状态(检测到暂存区有新文件)</li></ul>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: hello.txt
</code></pre>
<h3>2.4 提交本地库</h3>
<blockquote>
<p>git commit -m “日志信息” 文件名</p>
</blockquote>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git commit -m "my first commit" hello.txt
warning: LF will be replaced by CRLF in hello.txt.
The file will have its original line endings in your working directory.
my first commit
1 file changed, 16 insertions(+)create mode 100644 hello.txt
</code></pre>
<ul><li>查看状态(没有文件需要提交)</li></ul>
<pre><code>Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git status On branch master
nothing to commit, working tree clean
</code></pre>
<h3>2.6 推送本地分支到远程仓库</h3>
<ul><li>语法</li></ul>
<pre><code>git push 别名 分支
</code></pre>
<ul><li>案例实操</li></ul>
<pre><code>git push -u origin master
</code></pre>
<p>push如果出现以下错误,尝试下方两个方法:</p>
<blockquote>
<p>! master -> master (fetch first)<br> error: failed to push some refs to ‘https://github.com/shadowlim/course_design.git’</p>
</blockquote>
<ul><li>方法一:强制push</li></ul>
<pre><code>git push -u origin master --force
</code></pre>
<ul><li>方法二:先拉取仓库,再push</li></ul>
<pre><code>git pull --rebase origin master
git push -u origin master
</code></pre>
<h2>3、上传到已有的仓库</h2>
<blockquote>
<p>如果需要将代码上传到已经有内容的仓库中,那么需要提前拉取仓库的内容到本地</p>
</blockquote>
<pre><code>git pull origin master
</code></pre>
<p>拉取后再按照<code>2.3</code>开始的步骤即可。</p>
<blockquote>
<p>结束!</p>
</blockquote>
</div>
<div id="MySignature" role="contentinfo">
<p>本文来自博客园,作者:{WHYBIGDATA},转载请注明原文链接:https://www.cnblogs.com/shadowlim/p/17051724.html</p><br><br>
来源:https://www.cnblogs.com/shadowlim/p/17051724.html
頁:
[1]