Ubuntu下git的安装与使用
- Ubuntu下git的安装与使用与Windows下的大致相同,只不过个人感觉在Ubuntu下使用git更方便。
-
首先,确认你的系统是否已安装git,可以通过
git指令进行查看,如果没有,在命令行模式下输入sudo apt-get install git命令进行安装。
![]()
-
安装完成后进行git配置,输入指令
git config --global user.name "xxx"和git config --global user.email "你的邮箱地址"
![]()
-
配置完成后,需要创建验证用的公钥,因为
git是通过ssh的方式访问资源库的,所以需要在本地创建验证用的文件。使用命令ssh-keygen -C 'you email address@gmail.com' -t rsa(注意ssh与-keygen之间没有空格),会在用户目录~/.ssh/下建立相应的密钥文件。
![]()
-
创建完公钥后,需要上传。使用命令
cd ~/.ssh进入~/.ssh文件夹,输入gedit id_rsa.pub打开id_rsa.pub文件,复制其中所有内容。接着访问http://git.oschina.net/profile网页,点击SSH公钥,标题栏可以随意输入,公钥栏把你刚才复制的内容粘贴进去就OK了。
![]()
![]()
-
可以使用
ssh -T git@git.oschina.net命令来测试连接是否畅通。
![]()
-
接下来的内容就和在Windows下使用git上传一样了,先自己创建一个文件夹,把敲的代码拷贝进去(或者每次使用vim的时候直接切到该文件夹目录下进行编辑),先使用
git init指令初始化一个git仓库,接着输入git add .添加文件,输入git commit -m "注释"提交至仓库。
![]()
-
输入
git remote add origin https://git.oschina.net/你的用户名/项目名.git,git push origin master即可完成推送
![]()
rico@rico-virtual-machine:~/桌面$ git --version
Command 'git' not found, but can be installed with:
sudo apt install git
rico@rico-virtual-machine:~/桌面$ git
Command 'git' not found, but can be installed with:
sudo apt install git
rico@rico-virtual-machine:~/桌面$ sudo apt-get install git
[sudo] rico 的密码:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会同时安装下列软件:
git-man liberror-perl
建议安装:
git-daemon-run | git-daemon-sysvinit git-doc git-el git-email git-gui gitk
gitweb git-cvs git-mediawiki git-svn
下列【新】软件包将被安装:
git git-man liberror-perl
升级了 0 个软件包,新安装了 3 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 4,720 kB 的归档。
解压缩后会消耗 33.8 MB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu bionic/main amd64 liberror-perl all 0.17025-1 [22.8 kB]
获取:2 http://cn.archive.ubuntu.com/ubuntu bionic/main amd64 git-man all 1:2.17.0-1ubuntu1 [803 kB]
获取:3 http://cn.archive.ubuntu.com/ubuntu bionic/main amd64 git amd64 1:2.17.0-1ubuntu1 [3,894 kB]
已下载 4,720 kB,耗时 40秒 (117 kB/s)
正在选中未选择的软件包 liberror-perl。
(正在读取数据库 ... 系统当前共安装有 124885 个文件和目录。)
正准备解包 .../liberror-perl_0.17025-1_all.deb ...
正在解包 liberror-perl (0.17025-1) ...
正在选中未选择的软件包 git-man。
正准备解包 .../git-man_1%3a2.17.0-1ubuntu1_all.deb ...
正在解包 git-man (1:2.17.0-1ubuntu1) ...
正在选中未选择的软件包 git。
正准备解包 .../git_1%3a2.17.0-1ubuntu1_amd64.deb ...
正在解包 git (1:2.17.0-1ubuntu1) ...
正在设置 git-man (1:2.17.0-1ubuntu1) ...
正在设置 liberror-perl (0.17025-1) ...
正在处理用于 man-db (2.8.3-2) 的触发器 ...
正在设置 git (1:2.17.0-1ubuntu1) ...
rico@rico-virtual-machine:~/桌面$ git
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
这些是各种场合常见的 Git 命令:
开始一个工作区(参见:git help tutorial)
clone 克隆一个仓库到一个新目录
init 创建一个空的 Git 仓库或重新初始化一个已存在的仓库
在当前变更上工作(参见:git help everyday)
add 添加文件内容至索引
mv 移动或重命名一个文件、目录或符号链接
reset 重置当前 HEAD 到指定状态
rm 从工作区和索引中删除文件
检查历史和状态(参见:git help revisions)
bisect 通过二分查找定位引入 bug 的提交
grep 输出和模式匹配的行
log 显示提交日志
show 显示各种类型的对象
status 显示工作区状态
扩展、标记和调校您的历史记录
branch 列出、创建或删除分支
checkout 切换分支或恢复工作区文件
commit 记录变更到仓库
diff 显示提交之间、提交和工作区之间等的差异
merge 合并两个或更多开发历史
rebase 在另一个分支上重新应用提交
tag 创建、列出、删除或校验一个 GPG 签名的标签对象
协同(参见:git help workflows)
fetch 从另外一个仓库下载对象和引用
pull 获取并整合另外的仓库或一个本地分支
push 更新远程引用和相关的对象
命令 'git help -a' 和 'git help -g' 显示可用的子命令和一些概念帮助。
查看 'git help <命令>' 或 'git help <概念>' 以获取给定子命令或概念的
帮助。
rico@rico-virtual-machine:~/桌面$ git --version\
>
git version 2.17.0
rico@rico-virtual-machine:~/桌面$ git config --global user.name "username"
rico@rico-virtual-machine:~/桌面$ git config --global user.email "youname@foxmail.com"
rico@rico-virtual-machine:~/桌面$ ssh-keygen -C 'yourphone' -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/rico/.ssh/id_rsa):
Created directory '/home/rico/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/rico/.ssh/id_rsa.
Your public key has been saved in /home/rico/.ssh/id_rsa.pub.
The key fingerprint is:
dfsdfafagdfgrewadddddddddddddddsfadafdsafdsafdasfasdfsfdsdfa
The key's randomart image is:
+---[RSA 2048]----+
| ..+ ++..oo++|
| *.+ . ...+.|
| ..+ o ..+ +|
| .+...+. + |
| SE.=o.. |
| +o=o+ |
| =+B.o |
| *+ ..|
| .oo. |
+----[SHA256]-----+
rico@rico-virtual-machine:~/桌面$ cd ~/.ssh
rico@rico-virtual-machine:~/.ssh$ ls
id_rsa id_rsa.pub
rico@rico-virtual-machine:~/.ssh$ gedit id_rsa.pub
rico@rico-virtual-machine:~/.ssh$ ssh -T git@git.oschina.net
The authenticity of host 'git.oschina.net (116.211.167.14)' can't be established.
ECDSA key fingerprint is SHA256:FQGC9Kn/eye1W8icdBgrQp+KkGYoFgbVr17bmjey0Wc.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'git.oschina.net,116.211.167.14' (ECDSA) to the list of known hosts.
Bad packet length 2724703764.
ssh_dispatch_run_fatal: Connection to 116.211.167.14 port 22: Connection corrupted
rico@rico-virtual-machine:~/.ssh$









浙公网安备 33010602011771号