zl程序教程

您现在的位置是:首页 >  其他

当前栏目

上传项目代码到Github|Gitee

2023-02-26 09:48:15 时间

上传项目代码到Github|Gitee

1、前置准备

  • 1.1 Git 安装
  • 1.2 在 Git 中设置用户名
  • 1.3 SSH免密登录
  • 1.4 Github创建一个新的仓库

  • 2、上传项目
    • 2.1 初始化本地库
    • 2.2 添加远程仓库到本地
    • 2.3 查看本地库状态
    • 2.4 添加暂存区
    • 2.4 提交本地库
    • 2.6 推送本地分支到远程仓库
  • 3、上传到已有的仓库


1、前置准备

1.1 Git 安装

官网地址:https://git-scm.com/

  • 查看 GNU 协议,可以直接点击下一步。
  • Git 安装位置,要求是非中文并且没有空格的目录,然后下一步。
  • Git 选项配置,推荐默认设置,然后下一步。
  • Git 安装目录名,不用修改,直接点击下一步。
  • Git 的默认编辑器,建议使用默认的 Vim 编辑器,然后点击下一步。
  • 分支名设置,选择让 Git 决定,分支名默认为 master,下一步。
  • 修改 Git 的环境变量,选第一个,不修改环境变量,只在 Git Bash 里使用 Git。
  • 后台客户端连接协议,选默认值 OpenSSL,然后下一步。
  • 配置 Git 文件的行末换行符,Windows 使用 CRLF,Linux 使用 LF,选择第一个自动转换,然后继续下一步。
  • Git 终端类型,选择默认的 Git Bash 终端,然后继续下一步。
  • Git pull 合并的模式,选择默认,然后下一步。
  • 选择 Git 的凭据管理器,选择默认的跨平台的凭据管理器,然后下一步。
  • 其他配置,选择默认设置,然后下一步。
  • 实验室功能,技术还不成熟,有已知的 bug,不要勾选,然后点击右下角的 Install 按钮,开始安装 Git。

点击 Finsh 按钮,Git 安装成功!

  • 右键任意位置,在右键菜单里选择 Git Bash Here 即可打开 Git Bash 命令行终端。

在 Git Bash 终端里输入 git --version 查看 git 版本,如图所示,说明 Git 安装成功。

1.2 在 Git 中设置用户名

1.2.1 为计算机上的每个存储库设置 Git 用户名

Git 使用用户名将提交与身份关联。Git 用户名与您的 GitHub 用户名不同。

设置用户签名基本语法,示例如下:

Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master) 
$ git config --global user.name Layne 
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master) $ git config --global user.email Layne@atguigu.com 
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master) 
$ cat ~/.gitconfig 
[user]  name = Layne 
 email = Layne@atguigu.com 

签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。

Git 首次安装必须设置一下用户签名,否则无法提交代码。

1.2.2 为一个仓库设置 Git 用户名

将当前工作目录更改为您想要在其中配置与 Git 提交关联的名称的本地仓库。

  • 设置 Git 用户名:
$ git config user.name "7&"
  • 确认您正确设置了 Git 用户名:
$ git config user.name
> 7&

1.3 SSH免密登录

我们可以看到远程仓库中有一个 SSH 的地址,因此我们也可以使用 SSH 进行访问。

具体操作如下:

--进入当前用户的家目录 
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: 
+---[RSA 2048]----+ 
|     ..          | 
|    ..           | 
| . ..            | 
|+ +  o . .       | 
|oO .  = S .      | 
|X . .. + =       | 
|+@ * .. = .      | 
|X.&o+. o =       | 
|Eo+Oo   . .      | 
+----[SHA256]-----+ 
--进入.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 197609  406 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

复制 id_rsa.pub 文件内容,登录 GitHub,点击用户头像→Settings→SSH and GPG keys

接下来再往远程仓库 push 东西的时候使用 SSH 连接就不需要登录了。

1.4 Github创建一个新的仓库

操作简单,此处不演示

2、上传项目

2.1 初始化本地库

在需要上传的文件目录中,执行以下初始化命令

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/

.git 初始化的效果,生成git

2.2 添加远程仓库到本地

  • 基本语法
git remote -v 查看当前所有远程地址别名 
git remote add 别名 远程地址
  • 案例实操
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)

2.3 查看本地库状态

  • 首次查看(工作区没有任何文件)
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)
  • 新增文件之后再次查看状态,检测到未追踪的文件
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)

2.4 添加暂存区

  • 将工作区的文件添加到暂存区

git add 文件名

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.
  • 查看状态(检测到暂存区有新文件)
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

2.4 提交本地库

git commit -m "日志信息" 文件名

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. 
[master (root-commit) 86366fa] my first commit 
 1 file changed, 16 insertions(+)  create mode 100644 hello.txt
  • 查看状态(没有文件需要提交)
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master) 
$ git status On branch master 
nothing to commit, working tree clean

2.6 推送本地分支到远程仓库

  • 语法
git push 别名 分支
  • 案例实操
git push -u origin master

push如果出现以下错误,尝试下方两个方法:

! [rejected] master -> master (fetch first) error: failed to push some refs to 'https://github.com/shadowlim/course_design.git'

  • 方法一:强制push
git push -u origin master --force
  • 方法二:先拉取仓库,再push
git pull --rebase origin master
git push -u origin master

3、上传到已有的仓库

如果需要将代码上传到已经有内容的仓库中,那么需要提前拉取仓库的内容到本地

git pull origin master

拉取后再按照2.3开始的步骤即可。

结束!