git——远程仓库基本操作与冲突解决

本文介绍了如何在Windows环境下安装和配置Git,包括本地和远程仓库的设置。详细讲解了基本的Git操作,如克隆远程仓库、修改文件并提交到远程仓库等。此外,还探讨了当多个开发者在同一文件上工作时如何解决冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



一、引言



        都说不知道git的程序员不是好程序员,但是由于用的windows平台我是知道但一直没用过,这两天集中把廖雪峰的git博客看了一遍,自己总结了下==



二、远程仓库与本地仓库配置



1、安装git


实话实说,Windows是最烂的开发平台,如果不是开发Windows游戏或者在IE里调试页面,一般不推荐用Windows。不过,既然已经上了微软的贼船,也是有办法安装Git的。

Windows下要使用很多Linux/Unix的工具时,需要Cygwin这样的模拟环境,Git也一样。Cygwin的安装和配置都比较复杂,就不建议你折腾了。不过,有高人已经把模拟环境和Git都打包好了,名叫msysgit,只需要下载一个单独的exe安装程序,其他什么也不用装,绝对好用。

msysgit是Windows版的Git,从https://git-for-windows.github.io下载(网速慢的同学请移步国内镜像),然后按默认选项安装即可。

安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!


2、本地仓库配置


  • 配置自己机器的名字和邮箱

$ git config --global user.name "xcy"
$ git config --global user.email "gis_xiechenyang@163.com"


  • 生成ssh key(生成本地的唯一标识,用来远程仓库识别)

$ ssh-keygen -t rsa -C "gis_xiechenyang@163.com"



这个会在你指定的两个地方生成两个文件,后面用得着




3、远程仓库配置


远程仓库我们使用的是码云,之所以没用github,是因为github网速还有私有库要钱的问题。

  • 登陆码云网站,找到设置,在ssh中添加步骤一中生成的.pub公钥文件内容,直接拷贝(添加这个的目的是给你的本地账户授权)



  • 然后创建repository





三、基本操作



1、配置并克隆远程仓库到本地

  • 找到ssh地址


  • 克隆到本地仓库

$ git clone git@git.oschina.net:xcymorningsun/mygit.git





2、修改文件提交本地仓库,提交到远程仓库


  • 修改文件,查看status

$ git status

  • commit到本地

$ git add a.txt
$ git commit -m"a"

  • push到远程master分支

$ git push origin master




3、创建分支dev,提交到远程仓库


checkout分支dev

$ git checkout -b dev
$ git branch


push到远程dev分支

$ git push origin dev



四、冲突解决



情景在线:远程仓库有master分支与dev分支,两个程序员a、b要开发所以想clone出dev分支,不幸的是他们都修改了同一个文件的相同位置,八阿哥了==

操作过程:


1、小伙伴a操作

  • clone远程仓库,远程仓库克隆的时候不会分哪个分支的,默认都是clone master分支

$ git clone git@git.oschina.net:xcymorningsun/mygit.git

  • 进入dev分支

$ git checkout -b dev origin/dev


  • 资源管理器修改文件a位置,并使用上节中2的方法,将修改内容提交到远程仓库origin dev(上节2中提交的是origin master分支,注意区别)


2、小伙伴b操作

  • 与上述步骤很类似,clone远程仓库,原厂仓库克隆的时候不会分哪个分支的,默认都是clone master分支

$ git clone git@git.oschina.net:xcymorningsun/mygit.git

  • 进入dev分支

$ git checkout -b dev origin/dev


  • 修改同一文件a位置,并使用上节中2的方法,将修改内容提交到远程仓库origin dev(上节2中提交的是origin master分支,注意区别)

  • 然后问题出现了



3、冲突解决


  • push到远程dev分支报错,git建议直接pull远程到本地,那就试试

$ git pull


  • git pull也失败了,原因是没有指定本地dev分支与远程origin/dev分支的链接,根据提示,设置dev和origin/dev的链接

$ git branch --set-upstream dev origin/dev



  • 这下pull远程仓库origin/dev到dev了,不过有冲突,与git merge中处理方法类似(直接到文件修改,会有提示哪里有冲突,然后直接修改,add-commit)


  • 最后push到远程dev分支就ok



五、总结


  • 无程序,不git

  • git安装

  • git远程仓库与本地配置

  • 基本操作

  • push到远程分支冲突解决



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值