解决git无法连接问题,教你使用代理服务器 (git 如何使用代理服务器)

解决Git无法连接问题,教你使用代理服务器

Git是目前更流行的版本控制系统之一,但有时在使用Git时会遇到连接不上的问题,这往往是由于网络限制或防火墙阻止了Git连接的原因。在这种情况下,使用代理服务器可以解决该问题。本文将介绍如何使用代理服务器来解决Git无法连接的问题。

什么是代理服务器?

代理服务器是一种充当客户端与其他服务器之间的介质的服务器。它可以缓存最近的请求,为客户端减轻延迟,而且还可以通过隐藏原始网络地址来保护客户端的隐私安全。使用代理服务器是绕过、加速网络并保护隐私的常用方法。

步骤一:设置Git代理服务器

我们需要设置Git代理服务器。这可以通过在Git配置文件中添加代理服务器地址和端口来完成。以下是如何完成此操作的示例:

git config –global http.proxy http://proxy.example.com:8080

git config –global https.proxy https://proxy.example.com:8080

请注意,这里的”http://proxy.example.com:8080″和”https://proxy.example.com:8080″应替换为您使用的实际代理服务器地址和端口。

步骤二:测试Git连接

完成Git代理服务器设置后,我们需要测试Git是否能够连接到服务器。这可以通过运行以下Git命令来完成:

git clone https://github.com/username/repo.git

如果一切正常,Git应该能够访问您的存储库并提示您输入凭据。如果您看到以下错误,则表示仍存在连接问题:

fatal: unable to access ‘https://github.com/username/repo.git/’: Fled to connect to github.com port 443: Connection refused

此时可以尝试通过以下方法进行排除:

1.检查代理服务器地址和端口是否正确。

2.检查是否已启用防火墙,并确保已允许与代理服务器的通信。

3.如果您使用的是公司网络,则可能需要联系IT管理员以获得进一步帮助。

步骤三:取消Git代理服务器

当您完成了Git操作并希望取消代理服务器设置时,可以通过以下命令将其删除:

git config –global –unset http.proxy

git config –global –unset https.proxy

这将从Git配置文件中删除代理服务器设置,并恢复默认设置。

在本文中,我们介绍了如何使用代理服务器来解决Git无法连接的问题,并提供了一些有用的提示来帮助您排除连接问题。代理服务器是保护隐私、加速网络并绕过封锁的常用工具,对于需要在有网络限制的环境下使用Git的用户来说,它尤为重要。记得在使用代理服务器时要注意安全性,并选择受信任的服务器。

相关问题拓展阅读:

局域网内创建git服务器的简单方法

当资源有限,散和迹但是项目同时需要几个人协同开发,我们就需要配置一个简单的局域网内的git服务器,方便协同开发。

首先我们新建远端的git目录,目录名和本地仓库名一致,并且在目录下运行:

git init –bare

一个空的git仓库就建立好了。然后我们需要把本地的仓库和远端的关联起来。具体做法是,在本地git仓库的目录下执行:

git remote add origin

比如:git remote add origin ssh:/home/android/projects/gitserver/demoproject/。完成后,本地的提交,就可以push到远端啦。比如棚埋:

git push origin master

就可以把本地的冲并master推送到远端。协同开发的同事可以通过如下命令获取远端的仓库

git clone ssh:/home/android/projects/gitserver/demoproject/

是不是很简单呢

ps:实际使用过程中发现了一个问题,即本机的ip地址不是静态的。如何解决这个问题呢?可以在每次ip改变以后,重置仓库的origin url:

git remote set-url origin {url}

如何在WINDOWS下使用copSSH配置GIT服务器+TortiseGIT客户端

近日对GIT进行了研究,发现还真是个好东东,但是在GIT服务器的配置上,在试用了多个SSH服务器之后,始终未能搞定,导致几近崩溃;今把过程展示出来,希望对大家能有帮助。

  基本原理:使用copSSH在WINDOWS(XP)上建立SSH服务器;使用生成的“公钥-私钥”对作为身份标识;在服务器上配置SHELL脚本环境;配置客户端,加载私钥。详细过程如下:

  安装前准备:

Download copSSH  (注:SSH服务器软件)

Download msysgit (注:WINDOWS下的git安装包)

Download TortiseGIT (注:WINDOWS下的git图形化软件,与TortiseSVN是同门)

Download PuTTY Installer (注:生成公钥-私钥对的软件,并可用于SSH客户端的登陆)

  Step1 -安装copSSH

将copSSH(basic edition 2.0.0)安装到路径 c:\SSH

安装过程中写下SvcCOPSSH的密码,你可能永远不会用到,但写下也无伤大雅。

启动copSSH,选择 开始->所有程序->copSSH->control panel;然后激活一个用户(假定为Administrator,选择Users->Add,下一步,选择一个用户,不要勾选Allow password authenticatin选项,点击forward,OK。

其他关于public keys的事情无需操作,后面还会讲到。

  Step2-配置copSSH

选择路径-C:\SSH\etc ,在记事本中打开ssh_config 和sshd_config.(注意:两个文件有一个字母“d”的区别)

ssh_config -删除Port前的#号,设置端口号,这里采用默认端口22

sshd_config -保证端口号一致

确定系统防火墙中该端口未关闭。(这一点很重要)

重启系统

  Step3-安装Putty

重启之后,继续回来,现在可以安装Putty Installer了。

导航至安装路径,通常为c:\program files\Putty

打开PuttyGen.exe

选择生成密钥的长度4096

在空白面板处不停地晃动鼠标(用于生成随机种子),直到生成结束。(不要关闭PuttyGen)

来到路径c:\SSH\Home\Administrator\.ssh\ (这个路径在使用copSSH激活用户时会产生,根据激活的用户名,选择相应的路径),创建文件authorized_keys (注意没有后缀名)

打开PuttyGen,复制Public Key(公钥)到文件authorized_keys ,并保存

在PuttyGen中,将Private Key(私钥)保存为private_key.ppk,保存在同一目录下。-比如,我的保存目录为c:\SSH\Home\Administrator\.ssh\private_key.ppk 

现在目录下应该有两个文件了,authorized_keys  和 private_key.ppk

为了测试连接,运行putty.exe

在打开的界面中输入IP 地址(本机可以为localhost)和端口号

打开左侧的菜单,选择Connection-SSH-Auth,选择你的私钥文件,c:\SSH\Home\\.ssh\private_key.ppk 

点击Open,就会打开终端,让你输入Login Name,输入Administrator(注意大小写)

会看到显示接受你的公钥(Accept Public Key),客户端登陆成功,登陆信息也会缓存起来。

  Step 4-安装 msysgit和TortiseGIT

安装msysgit的过程中一路下一步即可,假定你的路径为C:\msysgit

安装TortiseGIT,完成之后

1)在任意路径点右键,选择TortiseGIT-Settings,设置git.exe的路径为c:\msysgit\msysgit\bin,即为msysgit的安装路径

2)在左侧菜单中选择Network,选择SSH Client为putty中的plink.exe(如我的路径为C:\Program Files\PuTTY\plink.exe)

将几个GIT运行中需要的文件复制到SSH服务器目录,当客户端远程登陆上来以后需要执行这些文件,文件源路径为c:\msysgit\msysgit\Git\libexec\git-core ,要复制的文件包括git.exe, git-receive-pack.exe, git-upload-archive.exe and git-upload-pack.exe,将以上文件复制到C:\SSH\Bin

  Step5-配置用户环境

对于copSSH来说,其默认的$HOME环境为c:\Documents and Settings\,GIT也将会在该目录下寻找authorized_keys 文件。当然这是要避免的事,要将GIT的路径重定向到C:\SSH\Home\\.ssh 。

选择路径C:\SSH\Home\Administrator\,打开.bashrc文件,在# User dependent .bashrc file下面加上这样一段:export HOME=/c/SSH/home/Administrator Shell Options,(注意不要有其他空格出现),然后选择保存。

把该文件复制到用户目录下,如: c:\Documents and Settings\Administrator\

  Step7-使用GIT和Plink

打开路径C:\SSH\home\Administrator,创建文件夹myapp.git

在该文件夹上点右键,选择git create repository here,勾选make it bare,服务器文件仓库创建成功。

导航至路径c:\Program Files\PuTTY ,打开pageant.exe,选择add key,将你的私钥(private_key.ppk)加载上。

然后右键选择 git clone,url设为ssh::22/SSH/Home/administrator/myapp.git ,如果clone成功,恭喜大功告成!

来讲讲Git这个玩意到底该怎么用

目前最火的版本控制软件就是Git了吧?你要是还用SVN或者CVS什么的都不好意思在圈里打招呼!前天我就遇到这种情况了,QQ上和老同学聊起自己用SVN来管理程序版本,好麻烦,当场就惨遭鄙视—“你还用SVN啊?你Out了!我们都用Git了!”好吧为了不被人鄙视,也为了可以鄙视别人,我终于也开始学Git了!

  用了几天之后的感觉就是,确实好用啊!难道大家都来追捧!linus继linux之后又造福了人类一把!就是这个东西因为模式和之前的版本控制软件略有不同,所以入门上稍许有点难度,好吧不废话了,讲讲自己的心得体会吧!

  首先不得不讲一下,需要分清git和github这是两个不同的东西,类似于linux和redhat,前者是开源的项目,后者则是利用这个开源的项目提供服务的服务商。github是一个使用git来托管代码的网站,有两种托管方式,一种是公开的,任何人都可以下载和上传代码,另一种是私人的只有建立者制定的人才可以下载或上传代码,私人的只有交钱才能用。

  国内类似github的服务现在也冒出来不少,我用的是git@OSC ,这个的好处是无论哪种代码都是免费的,当然以后会怎样就不清楚了,目前使用中发现github的速度明显不如git@OSC ,看来前者还是不接地气啊。

  因为这两个比较有代表性,后面我的使用基本就以这两个为例了。

  操作系统自然是windows,用linux开发的都是大牛也用不着我来教,我的是win7,但winxp应该区别不大。

  首先,你应该在你的电脑上安装msysgit和tortoisegit,前者是git的windows版,有了他就可以在你的电脑上创建工程,克隆工程什么的,后者则是大名鼎鼎的小乌龟,一个图形化的Git操作程序,用过tortoiseSVN的应该不会陌生,理论上只有前者也是完全可以使用git的,不过面对那裸的字符界面能受的了没几个吧。

  这两个软件都很好安装就不多说了,假设你已经装完了,我的msysgit是1.8.4,tortoisegit是1.8.6,如果你们用的是其他版本的差别应该也不大。tortoisegit的早期版本应该在用户设置上略有不同。

  之一部分 .在本地使用git(类似SVN之中自己的电脑就是服务器)

  首先,讲讲怎么在自己的电脑上创建和使用git库,没错,你可以将比较安全的磁盘当做之前SVN的消亮服务器,把库(git叫repository)放在这者陆里,然后把另一个磁盘当做工作区。

  之一步,创建repository:

  先进到那个你要当库的磁盘目录下,点鼠标右键,会出现这样一个东西:

  其中关于git的有五项,前两项Git GUI Here和Git Bash Here不要理会,就是调用那两个程序而已。Git Clone和TortoiseGit我们后面再说,既然是创建repository那就选择Git Create repository here吧,这时又会出现这么个东西:

  简单的说把Make it Bare勾上就表示这是一个单纯的repository,写代码的工作区放在另一个地方,我们既然是要创建一个库自然是要勾上了,然后点ok,会在目录下面出现很多稀奇古怪的文件和目录,不要在意,那都是git需要的东西。

  这样一个库就完成了。

  第二步,创建工作区:

  我们转到要做工作区的那个磁盘的目录下,然后右键选择Git Clone,出现的是这样一个东西:

  URL选择之前我们创建的库的目录,directory选择工作区,也就是你要放代码的目录。其他的不用管,ok之后会出现一个.git目录,说明我们拿嫌宽建立工作区成功了。

  第三步 Add和Commit、push文件

  我们在工作区的目录创建一个文件吧,比如test.c

  右键点击这个文件,选TortoiseGit:

  Add就是把这个文件加入到TortoiseGit的关注列表之中,不进行这一步的话,这个文件哪怕你改出花来,小乌龟也是不会管的,而你Add之后,小乌龟就会随时关注这个文件是否修改。

  在目录的空白处点击右键选择TortoiseGit,也可以批量Add文件,总之玩法很多大家可以自行研究。

  选择Add之后会出现一个框,点击ok就可以,然后会出现这样一个框表示Add成功,先别急着点ok,我们还要commit呢:

  同时test.c的图标也变了,出来个加号,表示这个文件add成功了。

  这里我们要花时间讲一下,git下文件的几种状态:

  1.就是没有Add的文件,这种文件在工作区的目录下就是普通的文件,小乌龟不关注他。

  2.就是Add成功的文件,用加号表示,但这个文件其实并没有保存到git的系统里,无论你怎样修改,也只是在工作区的目录下改变,git的系统里不会有这个文件的记录。

  3.是commit的文件,这个文件会保存在工作区下的.git目录里(应该是吧)也就是你的本地的git系统里面,git会比较你commit前后是否修改,如果有修改会用红叉表示,否则就是一个绿色的对号。

  4.是push到repository之中的文件,repository可以是你本机建立的,也可以是类似github和git@OSC这样的服务器。

  好吧我们现在只是add了,这肯定不行,必须要commit才算是利用了git啊,于是我们在刚刚那个对话框点击commit,这时候会要你输入一些提示,不写任何东西是无法选择ok的,好吧我们写上0.1表示这个版本,于是小乌龟允许你点ok了:

  commit之后就是这样子了,这时候我们可以继续push也可以点ok关闭,以后再push:

  commit成功之后文件是这个样子滴:

  push的操作和commit很类似,因为我们这个repository是建立在本机的另一个磁盘下的,所以push的过程之中不需要输入密码什么的,直接搞定,没什么可讲的。

  只需要注意commit的文件是保存在工作区的目录的,而push成功的文件是保存在repository里的。

  第二部分 如何利用GitHub和Git@OSC

  首先,需要你有GitHub和Git@OSC的账户。创建账户的过程不多说。

  然后在自己的账户下创建Repository,过程当然也是在网页上点几下,填点文字就行了,至于license和readme.md之类的东西,默认放着就好。这个创建repository的过程其实就是之前我们右键选择create repository的过程,只不过之前我们是在本机上创建,而这里是在服务器上而已,本质没啥区别。

  至于项目的类型,我们先讲public,之后有时间的话我再讲private(话说github的private是要收钱的,所以我也没试过)。

  创建了之后那就是下载和上传自己的代码文件了。

  这就和之一部分的过程很类似了,我们进到作为工作区的目录下面,右键选择git clone:

  会出现这么个东西,和之前的很类似:

  区别就是这里的url我们不能像之一部分那样填写本机的目录了,而是要填写github或者Git@OSC提供给你的url,github是在每个项目的右下角这里获取:

  git@OSC则是项目主页的正中间:

  复制,然后粘贴到小乌龟的那个文本框里就可以,然后ok,因为我们说的是public项目,所以没有密码之类的问题,很顺利的就会clone成功。

  然后我们新建一个文件,add,commit的过程都和之一部分完全相同,注意commit之后的文件也依然保存在本地,接下来我们要做的就是把commit的文件push到服务器上,操作方式是在工作区的目录空白处点击右键-》tortoiseGit-》push:

  因为是push到服务器上,所以会出现这样的对话框,填写自己的账户密码即可:

  之后去github和git@osc上自己的项目主页上看看吧,你的文件已经push到服务器上了!

  github和git@osc使用起来基本上很简单,网上有些文章写的是需要puttygen生成公钥私钥之类的,其实完全用不着,作为public项目简单的用户密码方式就可以了。那种方式以后我有时间再写个第三部分吧。

关于git 如何使用代理服务器的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 解决git无法连接问题,教你使用代理服务器 (git 如何使用代理服务器)