远程仓库的操作

远程仓库的操作

添加远程仓库

查看当前的远程仓库

git remote
# 加-v参数,可以看到每个别名的实际链接地址
git remote -v
$ git remote
origin
$ git remote -v
origin  https://github.com/Yel**-sudo/git-test.git (fetch)
origin  https://github.com/Yel**c-sudo/git-test.git (push)

提取远程仓库

用以下两个命令来提取远程仓库的更新。

# 从远程仓库下载新分支与数据
git fetch [别名] [分支名]
# 将远端仓库的新数据合并到当前分支
git merge [别名]/[分支名]

以上两个命令等同于git pull [别名]

在github仓库中编辑README.md文件,然后本地执行以下命令:

$ git fetch origin
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 932 bytes | 71.00 KiB/s, done.
From https://github.com/Yelrahc-sudo/git-test
   701fa5f..aec7514  main       -> origin/main
   
$ cat README.md
# Git 测试

$ git merge origin/main
Updating 701fa5f..aec7514
Fast-forward
 README.md | 1 +
 1 file changed, 1 insertion(+)

$ cat README.md
# Git 测试
## 更新修改

推送到远程仓库

推送你的新分支与数据到某个远端仓库

# 将指定的分支推送成为[指定别名]远程仓库上的指定的分支
git push [指定的别名] [指定的分支名]
$ echo "Add New Data" >> test.txt

$ git add test.txt
warning: in the working copy of 'test.txt', LF will be replaced by CRLF the next time Git touches it

$ git commit -m "添加test.txt文件"
[main 646e080] 添加test.txt文件
 1 file changed, 1 insertion(+)
 create mode 100644 test.txt

$ git push origin main # 推送到远端仓库
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 12 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 313 bytes | 313.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/Ye8-sudo/git-test.git
   aec7514..646e080  main -> main

删除远程仓库

git remote rm [别名]
$ git remote -v
origin  https://github.com/Ye8-sudo/git-test.git (fetch)
origin  https://github.com/Ye8-sudo/git-test.git (push)

$ git remote add origin2 https://github.com/Yel8-sudo/git-test.git

$ git remote -v
origin  https://github.com/Ye8-sudo/git-test.git (fetch)
origin  https://github.com/Ye8-sudo/git-test.git (push)
origin2 https://github.com/Ye8-sudo/git-test.git (fetch)
origin2 https://github.com/Yel8-sudo/git-test.git (push)

$ git remote rm origin2

$ git remote -v
origin  https://github.com/Ye8-sudo/git-test.git (fetch)
origin  https://github.com/Ye8-sudo/git-test.git (push)