git:远程仓库(GitHub、GitLab)+涉及到的命令

 


涉及到的命令

git remote  (定义远程仓库别名)

$git remote     不带参数,列出已经存在的远程分支(只有别名)
$git remote -v 列出详细信息,在每一个名字后面列出其远程url

添加远程版本库 $git remote add [shortname] [url] 其中shortname:为url映射到本地库的别名。 例: 提交到 Github $ git remote add origin git@github.com:tianqixin
/runoob-git-test.git $ git push -u origin master 删除远程仓库 $git remote rm name(别名) 修改仓库名 $git remote rename old_name new_name

 

git push  (将本地项目推送到远程)

git push 命令作用:用于从将本地的分支版本上传到远程并合并。
$git push 参数 <远程主机名> <本地分支名>:<远程分支名>
如果本地分支名与远程分支名相同,则可以省略冒号:$
git push <远程主机名> <本地分支名>
  其中:远程主机名就是url的别名。
  -u:第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
  --force:强制推送,即使版本有差异。
  --delete:删除主机分支。

实例:
$git push -u origin master
$
git push --force origin master
$
git push origin --delete master

 

git  clone (从远程拉取项目到本地) 

如
$git remote  add gitlab_test  git@192.168.24.135:MuYu/test.git
$git clone gitlab_test
$git clone
git@192.168.24.135:MuYu/test.git
$git clone https://gitee.com/zhong-jingshan/web-design-and-production.git

 


 本地git和GitHub上传公钥

 

一:使用远程仓库前的准备工作

使用github远程仓库前,需要注册一个账号。

由于你的本地Git仓库和github仓库之间的传输是通过SSH加密的,所以需要一点设置:

第一步:创建SSH Key

在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果有的话,直接跳过此如下命令,如果没有的话,打开命令行,输入如下命令:

sh-keygen -t rsa –C “youremail@example.com”

 

 

ssh-keygen -t rsa –C “youremail@example.com”, 由于我本地此前运行过一次,所以本地有,如下所示:

 

第一个是私钥,自己保留不能泄露。

第二个是公钥id_rsa.pub,可以分享给别人,让自己和别人通讯。

 

第二步:github添加ssh公钥

登录github,打开” settings”中的SSH Keys页面,然后点击“ SSH and GPG Keys”,选择"NEW SSH keys"填上任意title,在Key文本框里黏贴id_rsa.pub文件的内容,然后点击"Add SSH key"。

如图,添加结果即为添加好的key。

 

 

 

第三步:添加远程库

现在的情景是:我们已经在本地创建了一个Git仓库后,又想在github创建一个Git仓库,并且希望这两个仓库进行远程同步,这样github的仓库可以作为备份,又可以其他人通过该仓库来协作。

首先,登录github上,然后在右上角找到“new repository”创建一个新的仓库。如下:

 

 如图,目前仓库还是空的

 

二:将本地仓库和远程仓库关联,并将本地仓库推送到远程仓库上

目前,在GitHub上的这个WHoutest仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。

  现在,我们根据github的提示,在本地的test仓库下运行命令

  $git remote add origin  https://github.com/gaokai-github/WHoutest.git  (其中origin是远程链接在本地仓库的"别名")

 

 然后把本地的仓库分支,推送到远程仓库上。

  $cd /d/Git/test/

  $git push  -u origin master (把本地分支master推送到远程仓库origin上)

 

 点击蓝色条中的按钮后,会再跳出一个新的界面

点击绿色条按钮,然后会提示添加成功,之后命令会自动执行成功,如图:

 

 ,此时查看github上WHoutest仓库

 

 由于远程库是空的,我们第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。推送成功后,可以立刻在github页面中看到远程库的内容已经和本地一模一样了。

从现在起,只要本地作了提交,就可以通过如下命令:$git push origin master,即可。

现在就把本地master分支的最新修改推送到github上了,现在你就拥有了真正的分布式版本库了。

 

三:从远程库克隆

上面我们了解了先有本地库,后有远程库时候,如何关联远程库。

现在我们想,假如远程库有新的内容了,我想克隆到本地来 如何克隆呢?

首先,登录github,创建一个新的仓库,名字叫WHoutest2如下:

 


 git和gitlab实现免密上传和克隆

 

一、windows上创建密钥

在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果有的话,直接跳过此如下命令,如果没有的话,打开命令行,输入如下命令:

sh-keygen -t rsa –C “youremail@example.com”

 

 

ssh-keygen -t rsa –C “youremail@example.com”, 由于我本地此前运行过一次,所以本地有,如下所示:

 

第一个是私钥,自己保留不能泄露。

第二个是公钥id_rsa.pub,可以分享给别人,让自己和别人通讯。

 

二、在GitLab上添加该公钥,并命名。

其他用户也可以添加密钥。

 

 添加成功后,就可以在本地测试克隆、拉取项目命令了。

 

posted @ 2021-12-09 17:42  浮~生  阅读(224)  评论(0编辑  收藏  举报