上传项目代码到Github|Gitee
文章目录
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
开始的步骤即可。
结束!
本文来自博客园,作者:{WHYBIGDATA},转载请注明原文链接:https://www.cnblogs.com/shadowlim/p/17051724.html