关于使用码云,GITHUB,阿里云CODE来管理代码的一些操作记录

创建远程仓库

帐号申请完后,就可以新建库,比如boke。

本地初始化

本地得先安装git,在本地建一个文件夹,比如:web

点击:git bash here,弹出git命令窗口

1
2
//初始化仓库
git init

这时在web文件夹中会有一个.git的隐藏文件夹

配置本地的git配置信息

1
2
$ git config --global user.name "你的名字或昵称"
$ git config --global user.email "你的邮箱"

生成/添加SSH公钥

因为是第一次使用git,所以公钥是还没有的,可以使用以下方式创建公钥

1
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"

按照提示完成三次回车,即可生成 ssh key。通过查看 ~/.ssh/id_rsa.pub 文件内容,获取到你的 public key

1
2
cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....


公钥的后缀是.pub的,把这个里面的东西都粘到远程库的设置里

添加后,在终端中输入

1
ssh -T git@gitee.com

添加成功后,就可以使用SSH协议对项目进行操作了。

添加远程库:origin

1
$ git remote add origin https://gitee.com/用户个性地址/web.git

查看有哪些远程库,可以用git remote -v
要删除远程库,可以用git remote rm 库名

push文件到远程库

有了以上设置后,基本上就能push了,添加文件到缓存区add,提到缓存区到版本库commit,最后发布到远程push

1
2
3
$ git add .
$ git commit -m "第一次提交"
$ git push origin master

之后就可以在github或码云或阿里云code网站的项目上看到你上传的文件了

看着上面的流程好像有点乱,其实自己一次后就简单了,至于git的一些命令,可以查阅网上的教程,很多这方面的知识,以下用文章简化下流程,用码云的:

  1. 先在码云上创建一个库,比如:python
  2. 本地新建一个文件夹用来存放代码,比如:python
  3. 初始化本地库,先cd到python,然后git init
  4. 本地生成ssh-key,查看是否有:$ cd ~/.ssh,如果没有这个文件夹,则生成:$ ssh-keygen -t rsa -C “xxx@xxx.com“,在终端添加SSH信任:ssh -T git@gitee.com
  5. 复制KEY到码云个人的设置-安全设置-SSH公钥:$ cat ~/.ssh/id_rsa.pub
  6. 设置远程仓库地址:git remote add origin https://gitee.com/用户个性地址/python.git
  7. 拉取远程仓库文件:git pull origin master
  8. 上传文件到远程仓库:git push origin master

一些常用的GIT命令

  1. 查看文件状态:git status
  2. 查看远程仓库有哪些:git remote -v
  3. 删除不要的远程仓库:git remote rm 远程仓库名
  4. 回退版本:git reset –hard 版本号
  5. 查看配置:git config –list
  6. 配置user.name :git config –global user.name “阿乞云计算”
  7. 配置user.email: git config –global user.email “xxx@xxx.com
  8. 查看差异:git diff

这里有个注意的,要配置SSH钥的时候,如果你重新执行ssh-keygen -t rsa -C “xxxxx@xxxxx.com“,之前的旧KEY就不能用了,得重新到网站上添加新的KEY

使用git的一些其它补充 分支处理、SSH、多个远程库

关于SSH keys

SSH key 可以让你在你的电脑和Code服务器之间建立安全的加密连接。 先执行以下语句来判断是否已经存在本地公钥:

1
cat ~/.ssh/id_rsa.pub

如果你看到一长串以 ssh-rsa或 ssh-dsa开头的字符串, 你可以跳过 ssh-keygen的步骤。

提示: 最好的情况是一个密码对应一个ssh key,但是那不是必须的。你完全可以跳过创建密码这个步骤。请记住设置的密码并不能被修改或获取。

你可以按如下命令来生成ssh key:

1
ssh-keygen -t rsa -C “487042@qq.com”

这个指令会要求你提供一个位置和文件名去存放键值对和密码,你可以点击Enter键去使用默认值。

用以下命令获取你生成的公钥:

1
cat ~/.ssh/id_rsa.pub

一个本地库关联多个github库

使用多个远程库时,我们要注意,git给远程库起的默认名称是origin,如果有多个远程库,我们需要用不同的名称来标识不同的远程库。

仍然以python本地库为例,我们先删除已关联的名为origin的远程库:

1
git remote rm origin

然后,先关联GitHub的远程库:

1
git remote add github git@github.com:michaelliao/python.git

注意,远程库的名称叫github,不叫origin了。

接着,再关联码云的远程库:

1
git remote add gitee git@gitee.com:liaoxuefeng/python.git

同样注意,远程库的名称叫gitee,不叫origin。

现在,我们用git remote -v查看远程库信息,可以看到两个远程库:

1
2
3
4
5
git remote -v
gitee git@gitee.com:liaoxuefeng/python.git (fetch)
gitee git@gitee.com:liaoxuefeng/python.git (push)
github git@github.com:michaelliao/python.git (fetch)
github git@github.com:michaelliao/python.git (push)

如果要推送到GitHub,使用命令:

1
git push github master

如果要推送到码云,使用命令:

1
git push gitee master

这样一来,我们的本地库就可以同时与多个远程库互相同步

分支

Git鼓励大量使用分支:

  • 查看分支:git branch
  • 创建分支:git branch
  • 切换分支:git checkout
  • 创建+切换分支:git checkout -b
  • 合并某分支到当前分支:git merge
  • 删除本地分支:git branch -d
  • 删除远程服务器上的分支:git push origin -d BranchName
  • 或删除远程服务器上的分支:git branch -d origin/BranchName