百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 网站模板(百分百源码网)>电脑软件>服务器> Git怎样修改长途仓库地址
分享本文到:

Git怎样修改长途仓库地址

发布时间:05/16 来源:未知 浏览: 关键词:

企业搬移, 作为git仓库的服务器IP地址变了。 当地代码挺多,从新检出太占工夫,可以修改一个什么配置让我当地仓库和新的长途仓库创立关联吗, 答案是确定的!

要领有许多,这里简略介绍几种:

下列均以项目git_test为例:

老地址:http://192.168.1.12:9797/john/git_test.git
新地址:http://192.168.100.235:9797/john/git_test.git

长途仓库名称: origin

要领一 通过下令直接修改长途地址

进入git_test根目录

git remote 查看所有长途仓库, git remote xxx 查看指定长途仓库地址
git remote set-url origin http://192.168.100.235:9797/john/git_test.git

要领二 通过下令先删除再增加长途仓库

进入git_test根目录

git remote 查看所有长途仓库, git remote xxx 查看指定长途仓库地址
git remote rm origin
git remote add origin http://192.168.100.235:9797/john/git_test.git

要领三 直接修改配置文件

进入git_test/.git

vim config 

[core] 
repositoryformatversion = 0 
filemode = true 
logallrefupdates = true 
precomposeunicode = true 
[remote "origin"] 
url = http://192.168.100.235:9797/shimanqiang/assistant.git 
fetch = +refs/heads/*:refs/remotes/origin/* 
[branch "master"] 
remote = origin 
merge = refs/heads/master

修改 [remote “origin”]下面的url即可

要领四 通过第三方git客户端修改。

以SourceTree为例,点击 仓库 -> 仓库配置 -> 长途仓库 即可治理此项目中配置的所有长途仓库, 而且这个界面最下方还可以点击编辑配置文件,一样可以完成要领三。

git 长途仓库治理

要参与任何一个 Git 项目的协作,必必要理解该怎样治理长途仓库.长途仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写.同别人协作开发某 个项目时,需要治理这些长途仓库,以便推送或拉取数据,分享各自的工作进展.治理长途仓库的工作,包括增加长途库,移除废弃的长途库,治理各式长途库分 支,定义是否跟踪这些分支,等等.本节我们将细致计议长途库的治理和运用.

查看目前的长途库

要查看目前配置有哪些长途仓库,可以用 git remote 下令,它会列出每个长途库的简短名字.在克隆完某个项目后,至少可以看到一个名为 origin 的长途库,Git 默许运用这个名字来标识你所克隆的原始仓库:

$ git clone git://github.com/schacon/ticgit.git

  Initialized empty Git repository in /private/tmp/ticgit/.git/

  remote: Counting objects: 595, done.

  remote: Compressing objects: 100% (269/269), done.

  remote: Total 595 (delta 255), reused 589 (delta 253)

  Receiving objects: 100% (595/595), 73.31 KiB | 1 KiB/s, done.

  Resolving deltas: 100% (255/255), done.

  $ cd ticgit

  $ git remote

  origin也可以加上 -v 选项(译注:此为 ?verbose 的简写,取首字母),显示对应的克隆地址:

  $ git remote -v

  origin git://github.com/schacon/ticgit.git要是有多个长途仓库,此下令将全部列出.比方在我的 Grit 项目中,可以看到:

  $ cd grit

  $ git remote -v

  bakkdoor git://github.com/bakkdoor/grit.git

  cho45 git://github.com/cho45/grit.git

  defunkt git://github.com/defunkt/grit.git

  koke git://github.com/koke/grit.git

origin git@github.com:mojombo/grit.git这样一来,我就可以非常轻松地从这些会员的仓库中,拉取他们的提交到当地.请注意,上面列出的地址只要 origin 用的是 SSH URL 链接,所以也只要这个仓库我能推送数据上去(我们会在第四章解释缘由).

增加长途仓库

要增加一个新的长途仓库,可以指定一个简略的名字,以便未来援用,运转 git remote add [shortname] [url]:

  $ git remote

  origin

  $ git remote add pb git://github.com/paulboone/ticgit.git

  $ git remote -v

  origin git://github.com/schacon/ticgit.git

pb git://github.com/paulboone/ticgit.git此刻可以用字串 pb 指代对应的仓库地址了.比方说,要抓取所有 Paul 有的,但当地仓库没有的信息,可以运转 git fetch pb:

  $ git fetch pb

  remote: Counting objects: 58, done.

  remote: Compressing objects: 100% (41/41), done.

  remote: Total 44 (delta 24), reused 1 (delta 0)

  Unpacking objects: 100% (44/44), done.

  From git://github.com/paulboone/ticgit

  * [new branch] master -> pb/master

  * [new branch] ticgit -> pb/ticgit

此刻,Paul 的主干分支(master)已经完全可以在当地访问了,对应的名字是 pb/master,你可以将它合并到本人的某个分支,或者切换到这个分支,看看有些什么有趣的更新.

从长途仓库抓取数据

正如以前所看到的,可以用下面的下令从长途仓库抓取数据到当地:

$ git fetch [remote-name]此下令会到长途仓库中拉取所有你当地仓库中尚无的数据.运转完成后,你就可以在当地访问该长途仓库中的所有分支,将其中某个 分支合并到当地,或者只是掏出某个分支,一探讨竟.(我们会在第三章细致计议对于分支的概念和操纵.)

要是是克隆了一个仓库,此下令会主动将长途仓库归于 origin 名下.所以,git fetch origin 会抓取从你上次克隆以来他人上传到此长途仓库中的所有更新(或是上次 fetch 以来他人提交的更新).有一点很重要,需要记住,fetch 下令只是将远端的数据拉到当地仓库,并不主动合并到目前工作分支,只要当你的确预备好了,才能手工合并.(说 明:事先需要新建好长途的仓库,然后施行:git remote add [仓库名] [仓库url],git fetch [长途仓库名],即可抓取到长途仓库数据到当地,再用git merge remotes/[仓库名]/master就可以将长途仓库merge到当地目前branch.这种分支方式比较适合独立-整合开发,即各自开发测试好后 再整合在一起.比方,Android的Framework和AP开发.

可以运用--bare 选项运转git init 来设定一个空仓库,这会初始化一个不包含工作目录的仓库.

  $ cd /opt/git

  $ mkdir project.git

  $ cd project.git

  $ git --bare init这时,Join,Josie 或者Jessica 就可以把它加为长途仓库,推送一个分支,从而把第一个版本的工程上传到仓库里了.)

要是设置了某个分支用于跟踪某个远端仓库的分支(参见下节及第三章的内容),可以运用 git pull 下令主动抓取数据下来,然后将远端分支主动合并到当地仓库中目前分支.在日常工作中我们经常这么用,既快且好.现实上,默许状况下 git clone 下令本质上就是主动新建了当地的 master 分支用于跟踪长途仓库中的 master 分支(假如长途仓库的确有 master 分支).所以个别我们运转 git pull,目的都是要从原始克隆的远端仓库中抓取数据后,合并到工作目录中目前分支.

推送数据到长途仓库

项目进行到一个阶段,要同他人分享当前的成果,可以将当地仓库中的数据推送到长途仓库.实现这个任务的下令很简略: git push [remote-name] [branch-name].要是要把当地的 master 分支推送到 origin 服务器上(再次注明下,克隆操纵会主动运用默许的 master 和 origin 名字),可以运转下面的下令:

$ git push origin master只要在所克隆的服务器上有写权限,或者统一时刻没有其别人在推数据,这条下令才会如期完成任务.要是在你推数据前,已经有其别人推送了若干更新,那 你的推送操纵就会被驳回.你必须先把他们的更新抓取到当地,并到本人的项目中,然后才可以再次推送.有关推送数据到长途仓库的细致内容见第三章.

查看长途仓库信息

我们可以通过下令 git remote show [remote-name] 查看某个长途仓库的细致信息,比方要看所克隆的origin 仓库,可以运转:

  $ git remote show origin

  * remote origin

  URL: git://github.com/schacon/ticgit.git

  Remote branch merged with 'git pull' while on branch master

  master

  Tracked remote branches

  master

ticgit除了对应的克隆地址外,它还给出了很多额外的信息.它友善地告诉你要是是在 master 分支,就可以用git pull 下令抓取数据合并到当地.另外还列出了所有处于跟踪状态中的远端分支.

现实运用历程中,git remote show 给出的信息可能会像这样:

  $ git remote show origin

  * remote origin

  URL: git@github.com:defunkt/github.git

  Remote branch merged with 'git pull' while on branch issues

  issues

  Remote branch merged with 'git pull' while on branch master

  master

  New remote branches (next fetch will store in remotes/origin)

  caching

  Stale tracking branches (use 'git remote prune')

  libwalker

  walker2

  Tracked remote branches

  acl

  apiv2

  dashboard2

  issues

  master

  postgres

  Local branch pushed with 'git push'

master:master它告诉我们,运转 git push 时缺省推送的分支是什么(译注:最后两行).它还显示了有哪些远端分支尚无同步 到当地(译注:第六行的 caching 分支),哪些已同步到当地的远端分支在远端服务器上已被删除(译注:Stale tracking branches 下面的两个分支),以及运转 git pull 时将主动合并哪些分支(译注:前四行中列出的 issues 和 master 分支).(此下令也可以查看到当地分支和长途仓库分支的对应关系.)

长途仓库的删除和重命名

在新版 Git 中可以用 git remote rename 下令修改某个长途仓库的简短名称,比方想把 pb 改成 paul,可以这么运转:

  $ git remote rename pb paul

  $ git remote

  origin

paul注意,对长途仓库的重命名,也会使对应的分支名称产生变化,本来的 pb/master 分支此刻成了paul/master.

遇到远端仓库服务器迁移,或者本来的克隆镜像不再运用,又或者某个参与者不再奉献代码,那么需要移除对应的远端仓库,可以运转 git remote rm 下令:

  $ git remote rm paul

  $ git remote

  origin

以上就是本文的全部内容,但愿对大家的学习有所帮忙,也但愿大家多多支撑我们。

热门标签:dede模板 / destoon模板 / dedecms模版 / 织梦模板
责任编辑:I0ixt
打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有153人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助



订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板