在写这篇文章之前,其实我已经写过一次教程:git码云的一次配置全记录,但是当时写那个教程的时候,对于git的使用还是懵懵懂懂的,如果是新手完全照着做可能会出现一些意想不到的问题,所以在经历N次代码提交之后,我决定重新写一篇教程,去指导小白如何使用git,当然,本教程仅提供单Master分支的教程,因为本人一直都是自己开发,所以对其他分支需求还不是很大,一个Master也能勉强应付,废话不多说,开始吧。 在实际使用中可能还会遇到一些冲突的问题,可以参考这篇:git解决本地与远程冲突
登陆之后,进入下面这个界面,点击+号,然后在展开的菜单选择新建仓库
然后填入仓库信息
执行下面的命令生成一个密钥
read -p "请输入邮箱[自定义]" e;ssh-keygen -t rsa -C "$e"执行过程:
root@xxzx-PC:~# read -p "请输入邮箱[自定义]" e;ssh-keygen -t rsa -C "$e" 请输入邮箱[自定义]x@x.com Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Created directory '/root/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:URhe9x6TTOT6I91Ee7n6sxP8ffZOctN6OE/Kg8AdzQM x@x.com The key's randomart image is: +---[RSA 2048]----+ | .oo ..o | | ..o .E= . | | o +B .| | . .o++o| | S. ...o+o| | o .o =+| | ...=+X| | .o=@B| | .=XX| +----[SHA256]-----+ root@xxzx-PC:~#执行下面的命令获取密钥
echo 请将下面的内容复制下来&&cat ~/.ssh/id_rsa.pub执行过程:
root@xxzx-PC:~# echo 请将下面的内容复制下来&&cat ~/.ssh/id_rsa.pub 请将下面的内容复制下来 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZDNoG1LtQOF8KMz3bkII4CMqcpyEJYqV2u1o95/eprT64RHWqpxFmXIlMD6AeebglQXrQHRQE3TNh4pOR7PH省略好多好多。。。。。。。。uKAFASHs0EFVgZSfk9dHdY4KPBDXsNQiG0JsH0HzxR0PTW+oSqqJo4SZC2NYsur88Ov84ozVl9p827F2DTFxyh9XwHaY0u318j2hqFMHyR x@x.comPS: 中间的中文是我改了的
然后把所有的英文部分复制下来(每个人的都不一样),我的是:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZDNoG1LtQOF8KMz3bkII4CMqcpyEJYqV2u1o95/eprT64RHWqpxFmXIlMD6AeebglQXrQHRQE3省略好多好多。。。。。。。。+oSqqJo4SZC2NYsur88Ov84ozVl9p827F2DTFxyh9XwHaY0u318j2hqFMHyR x@x.com复制了之后,回到gitee网站,点击下面 的按钮,进入设置 然后来到SSH公钥 在公钥输入框粘贴生成的密钥,然后就会自己生成一个标题(可以自定义修改,但是不能改公钥的内容) 点击确定,然后提示输入密码(登陆密码),输入完成之后,点击确定即可添加成功
PS:一个密钥只能导入到一个gitee账号
到这里,密钥配置就完成了,接下来需要进行仓库克隆
PS:克隆之前,请先安装git工具
返回新建的仓库那里,然后根据下图红框从上到下的顺序依次点击 然后就得到一个仓库地址
git@gitee.com:faith01238/faith.git在得到仓库地址之后,我们回到终端,执行下面的命令
PS:必须保证执行命令的用户跟终端与前面的一致,有一个不一样都会失败
仓库克隆的语法如下:
git clone ${git_url}PS:请把变量改成自己的URL
根据语法所得,我需要执行的命令如下:
git clone git@gitee.com:faith01238/faith.git执行过程:
root@xxzx-PC:~# git clone git@gitee.com:faith01238/faith.git 正克隆到 'faith'... The authenticity of host 'gitee.com (212.64.62.183)' can't be established. ECDSA key fingerprint is SHA256:FQGC9Kn/eye1W8icdBgrQp+KkGYoFgbVr17bmjey0Wc. Are you sure you want to continue connecting (yes/no)? yesPS:第一次执行的时候,需要输入yes以继续
然后克隆完成
root@xxzx-PC:~# git clone git@gitee.com:faith01238/faith.git 正克隆到 'faith'... The authenticity of host 'gitee.com (212.64.62.183)' 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 'gitee.com,212.64.62.183' (ECDSA) to the list of known hosts. remote: Enumerating objects: 9, done. remote: Counting objects: 100% (9/9), done. remote: Compressing objects: 100% (9/9), done. remote: Total 9 (delta 0), reused 0 (delta 0), pack-reused 0 接收对象中: 100% (9/9), 5.68 KiB | 5.68 MiB/s, 完成. root@xxzx-PC:~#PS:以下配置需要进入项目根目录进行配置
进入项目根目录与验证
root@xxzx-PC:~# cd faith/ root@xxzx-PC:~/faith# git remote -v origin git@gitee.com:faith01238/faith.git (fetch) origin git@gitee.com:faith01238/faith.git (push) root@xxzx-PC:~/faith#因为这个仓库只有master,所以执行下面的命令进行配置默认分支
git branch --set-upstream-to=origin/master master执行过程
root@xxzx-PC:~/faith# git branch --set-upstream-to=origin/master master 分支 'master' 设置为跟踪来自 'origin' 的远程分支 'master'。 root@xxzx-PC:~/faith#PS:此步骤中的用户及邮箱只是作为一个提交者的标记,所以可以自定义
执行下面的命令进行配置用户名
read -p "输入用户名" Y&&git config --global user.name "$Y"执行过程:
root@xxzx-PC:~/faith# read -p "输入用户名" Y&&git config --global user.name "$Y" 输入用户名Y root@xxzx-PC:~/faith#没有提示就是执行成功,或者再次执行下面的命令获取退出码,如果是0则表示成功,其他为错误
echo $?执行结果
root@xxzx-PC:~/faith# read -p "输入用户名" Y&&git config --global user.name "$Y" 输入用户名Y root@xxzx-PC:~/faith# echo $? 0 root@xxzx-PC:~/faith#执行下面的命令进行配置邮箱
read -p "请输入你的邮箱地址" em&&git config --global user.email "$em"执行过程:
root@xxzx-PC:~/faith# read -p "请输入你的邮箱地址" em&&git config --global user.email "$em" 请输入你的邮箱地址Y@Y.com root@xxzx-PC:~/faith# echo $? 0 root@xxzx-PC:~/faith#执行成功。
任意新建或者修改文件,我的过程如下:
root@xxzx-PC:~/faith# touch t.txt root@xxzx-PC:~/faith# ls LICENSE README.en.md README.md t.txt root@xxzx-PC:~/faith# echo '1' > t.txt root@xxzx-PC:~/faith#然后查看当前状态
git status执行结果:
root@xxzx-PC:~/faith# git status 位于分支 master 您的分支与上游分支 'origin/master' 一致。 未跟踪的文件: (使用 "git add <文件>..." 以包含要提交的内容) t.txt 提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪) root@xxzx-PC:~/faith#执行下面的命令,添加所有文件到缓存区
git add -A然后再次查看状态
root@xxzx-PC:~/faith# git status 位于分支 master 您的分支与上游分支 'origin/master' 一致。 要提交的变更: (使用 "git reset HEAD <文件>..." 以取消暂存) 新文件: t.txt root@xxzx-PC:~/faith#此时,与第一次的描述已经改变了,新建的文件已经放入了暂存区
PS:提交代码的时候,只会提交添加到暂存区的文件
每次提交代码的时候,都需要对本次提交进行一个说明,例如改了哪里之类的
PS:不要嫌麻烦,这个很重要
执行下面的命令进行提交本次推送信息
git commit -m "此次做了什么更改,在这里备注一下" ###对此次更改做一个描述在这里我是新建了一个文件,所以我提交的信息如下:
git commit -m "创建了一个新的示例文件"执行过程:
root@xxzx-PC:~/faith# git commit -m "创建了一个新的示例文件" [master 77245a0] 创建了一个新的示例文件 1 file changed, 1 insertion(+) create mode 100644 t.txt root@xxzx-PC:~/faith#添加了提交描述之后,执行下面的命令即可将本地的最新代码推送到云端
git push执行过程:
root@xxzx-PC:~/faith# git push 枚举对象: 4, 完成. 对象计数中: 100% (4/4), 完成. 使用 8 个线程进行压缩 压缩对象中: 100% (2/2), 完成. 写入对象中: 100% (3/3), 293 bytes | 293.00 KiB/s, 完成. 总共 3 (差异 1),复用 0 (差异 0) remote: Powered by GITEE.COM [GNK-5.0] To gitee.com:faith01238/faith.git f13684d..77245a0 master -> master此时,回到网页上,刷新页面信息,可以看到,刚才提交的文件已经推送成功了,备注信息也正确了 最后,查看云端内容 结果与提交的一致,那么到这里,简单的git使用教程就结束了。如果觉得本文对你 的学习有帮助,记得点个赞关注一下。