git 官方的代码托管中心
远程仓库操作
命令名 | 作用 |
---|---|
git remote -v | 查看当前所有远程地址别名 |
git remote add 别名 远程仓库http地址 | 给远程仓库起别名 |
git push 别名【或者http地址】 分支 | 把本地分支的内容推送给远程仓库 |
git clone 远程地址 | 将远程仓库的内容克隆到本地 |
git pull 远程库别名 远程分支别名 | 将远程库对于分支的最新内容拉下来直接合并 |
打开本地git
git remote -v
查看所有远程地址,结果是没有git remote add 别名 远程地址
把刚才创建的远程仓库地址添加进来git remote -v
所有远程地址,结果有两条,说这个远程仓库能push用也能pull和clone用git pull 别名或http地址 本地分支名
推送本地内容到github仓库中,这个过程受网络影响,多试几次
之后就会弹出一个窗口问你要登陆github,直接用浏览器打开
就会出现页面让你授权git凭证,点击 Authorize ,出现 Authorize successed就是成功授权了
然后这个页面就能关了,等待分支文件上传完成后,刷新页面,就能在远程仓库看见上传的项目了
Enumerating objects: 15, done.
Counting objects: 100% (15/15), done.
Delta compression using up to 8 threads
Compressing objects: 100% (10/10), done.
Writing objects: 100% (15/15), 1.08 KiB | 91.00 KiB/s, done.
Total 15 (delta 3), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (3/3), done.
To https://github.com/StringNameQinDie/git-demo.git
* [new branch] master -> master
先打开远程仓库
在本地git上 git pull git-demo1[别名] master[分支名]
进行拉取
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 660 bytes | 60.00 KiB/s, done.
From https://github.com/StringNameQinDie/git-demo
* branch master -> FETCH_HEAD
d5d03e0..063b007 master -> git-demo1/master
Updating d5d03e0..063b007
Fast-forward
test.txt | 1 +
1 file changed, 1 insertion(+)
报文记录了文件修改数、修改记录
可以查看一下本地库状态,发现是干净的,说明拉取会直接自动帮你提交至本地库,查看文件是否被修改,那么文件已经修改了。要随时使本地库跟远程仓库的版本一样
第三方想要对远程仓库的内容进行 clone ,创建一个空目录模拟
在空目录里面 打开一个 GitBash ,
git clone 远程仓库HTTP链接
,直接就拉取好了git remote -v
会发现别名也被自定义好了说明在进行克隆代码时不需要登陆,而且会自动初始化仓库,创建远程仓库的同样的目录结构,创建了.git文件夹,会自动创建别名
$ git clone https://github.com/StringNameQinDie/git-demo.git
Cloning into 'git-demo'...
remote: Enumerating objects: 18, done.
remote: Counting objects: 100% (18/18), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 18 (delta 4), reused 14 (delta 3), pack-reused 0
Receiving objects: 100% (18/18), done.
Resolving deltas: 100% (4/4), done.
克隆的时候老实的右键粘贴,否则就会说 https 协议不支持咋的,不支持就重新输入命令复制粘贴
如果团队内的成员需要push分支去远程仓库,则需要这么操作【用两个账号模拟的】
git push 远程仓库地址 分支名
将修改后的内容推送至团队仓库如果团队内部不能开发出来功能或者想向开源仓库提供帮助或者创意,就算是跨团队协作了,第三方既不是队友,也不是自己。怎么推送代码给你。
仓库主人的昵称/仓库名
就能精准找到仓库,因为昵称是唯一的来到远程仓库界面,code 按钮的SSH 选项有警告不能用,说你的账号里面没有任何widows的SSH密钥,需要添加到帐号里。
首先,来到电脑的 用户->用户名 下的目录,在那里GitBash
然后 ssh-keygen -t rsa -C 描述内容
,在这个目录下生成 .ssh 密钥目录,命令中 ssh-keygen 是生成ssh目录的命令,-t 是指使用哪种算法,rsa 是一种加密算法协议 ,-C 是一种描述符,后面跟的一般是用户名。
输入命令后,按三下回车,就加密好了。
查看当前目录,就能看见 .ssh 目录
cd .ssh 进入目录,查看里面的内容,id_rsa 文件保存着私钥,id_rsa.pub 是公钥
在命令行中进入 .ssh 目录,cat id_rsa.pub 查看公钥内容,并复制
然后来到github头像->settings->SSH and GPG keys 里面,创建一个新的SSH公钥
起一个名称,然后把复制的公钥内容粘贴到下面的框子里。
确定后,出现
就是成了
最后在本地仓库做一些修改提交后,通过仓库的 SSH 地址进行pull和push操作,测试是否成功
pull 的时候问你要不要保存这个SSH连接,输入yes
如果中间出现了迷惑性问题就把命令再重新打一遍执行