在开启代理的情况下使用git

在开启代理的情况下使用git

测试ubuntu系统开通vpn服务的情况下使用git

git使用过程中的问题

1. 连接问题

开代理后无法连接

解决方案:在~/.ssh/config中配置vpn的信息如下:

# 1. If don't use vpn, delete the following 3 lines;
# 2. Here, 22 is the port your VPN set.
Host github.com
    User git
    ProxyCommand nc -v -x 127.0.0.1:22 %h %p

2. 秘钥问题

连接成功,但授权有问题

解决方案:生成ssh密钥后添加到客户端,添加到github

https://docs.github.com/zh/authentication/troubleshooting-ssh/error-permission-denied-publickey
https://docs.github.com/zh/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
https://docs.github.com/zh/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account

git使用技巧

echo "# Test" >> README.mecho "# Test" >> README.md

这行命令会在README.md文件中添加一行文字“# Test”。如果文件不存在会新建README.md文件。

git init 

初始化一个空的Git仓库。

git add README.md 

添加README.md文件到暂存区,标记为下次commit的内容。

==========================================================================================================

git commit -m "first commit" 

提交暂存区的文件,并附加提交信息"first commit"。

-m 表示为本次提交添加一条提交信息(commit message)。

git commit 命令用于提交暂存区的文件到本地仓库。该命令需要一个参数来指定本次提交的提交信息。

使用 -m 可以在命令行中直接添加提交信息,而不用跳转到默认的文本编辑器来编写消息。

例如:

git commit -m “fix bug #12345”

这个命令会直接以"fix bug #12345"作为本次提交的提交信息。

如果不使用 -m 参数,git commit默认会打开文本编辑器以便输入完整的提交信息。

所以,-m 表示以命令行参数的形式传入本次提交的提交信息,从而跳过文本编辑器打开的步骤,提供一种更简便快速的提交方式。

==========================================================================================================

git branch -M main

重命名当前分支为main。

在 git branch 命令中,-M 选项代表重命名分支。

-M全称为--move,用于重命名或移动一个本地分支到一个新名字。

例如:

git branch -M main

这个命令将当前分支重命名为 main

如果新的分支名已存在,默认是不允许覆盖已有分支的。如果要强制覆盖,可以使用 -M--force 选项。

git branch -M main -f 

这个命令会强制覆盖已经存在的 main 分支。

所以,-M--move 选项表示重命名分支,这在将分支从旧名称像 master 迁移到新名称像 main 时很有用。

==========================================================================================================

git remote add origin git@github.com:Tomato-in/Test.git 

添加一个名为origin的远程仓库,指向GitHub上的Test仓库。

这个命令中“origin”只是一个本地对远程仓库的别名或简称,不一定要和远程仓库的真实名称相同。

在Git中,我们可以用 origin、upstream 等名字来代表远程仓库,这些名字在本地只是一个引用或指针,用来指向远程仓库的位置。

“origin”这个名字在Git中是一个默认的约定俗成的别名,通常指向远程仓库的主要分支。

所以在这个命令中,我们添加一个本地别名 “origin”,让它指向GitHub上账户下的Test仓库。

之后我们就可以用“origin”代替全长的GitHub仓库地址,比如:

git push origin main

这样看起来更加简洁清晰。
所以“origin”这里仅仅是本地对远程仓库的一个别名或引用,只是起一个名字来表示那个远程库,并不会影响或修改远程仓库本身的名称。

在Git中,git remote 命令用于管理远程仓库连接。
git remote 的常见用法有:

  • git remote add:添加远程仓库连接
  • git remote rm:删除远程仓库连接
  • git remote show:查看远程仓库信息
  • git remote rename:远程仓库重命名
    所以在这个命令中:
    git remote 表示要对远程仓库进行操作
    add 表示添加一个新的远程仓库
    origin 是要添加的远程仓库的本地别名
    最后的参数是远程仓库的真实地址
    所以整条命令的意思就是:
    添加一个本地别名为 origin 的远程仓库,该仓库指向 GitHub 上 Tomato-in/Test.git 这个真实仓库地址。
    通过 git remote 添加远程仓库连接后,就可以用别名代替地址进行推拉操作了。

==========================================================================================================

git push -u origin main 

将本地的main分支推送到origin远程仓库的main分支,并将origin设置为默认远程分支。

-u 指的是 --set-upstream 的缩写。

–set-upstream 是一个 git push 的选项,用来设置本地分支与远程分支的链接关系。

执行 git push -u 后的效果相当于执行了以下两条命令:

git push # 推送本地分支到远程
git branch --set-upstream-to=origin/main main # 将本地main分支与远程origin/main关联

也就是说,-u 可以在推送的同时建立本地分支与远程分支的追踪关系,这样以后就可以通过简化命令进行推拉了。
例如一次性设置上游分支后,后续可以直接:

git push # 不用指定远程分支了 
git pull # 不用指定远程分支了

所以,-u 是 --set-upstream 的缩写,用来在推送时建立本地分支与远程分支的链接,非常方便。
这个参数通常在第一次将本地分支推送到远程时使用,用来建立追踪关系。

==========================================================================================================

git ls-files

这条命令罗列出仓库中的所有文件。

git ls-tree -l main

这条命令与上条类似。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值