从0开始学Git——Git的协同操作
原创
©著作权归作者所有:来自51CTO博客作者super彦的原创作品,请联系作者获取转载授权,否则将追究法律责任
环境:
test_git 目录下有个my-project 版本库
所有命令都在test_git目录下执行
本地协同操作
从远端仓库检出代码,或者克隆一个已有的版本库
#格式: git clone 目标文件 文件
git clone ./my-project ./my-project-copy
#1.修改原版本库中的文件并执行add,commit操作
git pull #2.在原版本库中执行
git pull #3.在克隆版本库中执行
# 现在两个版本库的代码就一致了
#1.修改克隆版本库中的文件并执行add,commit操作
git pull #2.克隆版本库中执行
git pull ../my-project-copy master #3.在克隆版本库中执行,取回修改
# 现在两个版本库的代码就一致了
- 因为克隆库存储了原始库的信息所以执行pull命令时可以不加参数,而原始库没有克隆库的信息,所以执行pull命令要加克隆库的信息
- pull : 从其它库里获取提交
把变更的代码提交到共享版本库中供其它仓库pull
git clone --bare ./my-project #创建一个裸奔仓库
#执行完会生成一个名为 our-project.git共享库
#1.目标仓库修改文件并执行add commit操作
#2.向共享仓库push代码
git push ..\your-project.git\ master
#3.在另一个仓库中pull共享版本库的代码
git pull ..\your-project.git\ master
远端协同操作
与中央仓库交互
#格式 git clone 路径
git clone git@github.com:liuyanqing1023/xcEduService.git
echo "# pandaGenerator" >> README.md
git init #在本地初始化一个git仓库
# 提交仓库说明,不是必须的
git add README.md
git commit -m "first commit"
#设置远端仓库
git remote add origin https://github.com/liuyanqing1023/pandaGenerator.git
# 将master分支推送到origin仓库
git push -u origin master
#初始化git,已经初始化的不用执行该命令
git init
git add .
git commit -m '初始化项目'
#设置origin主机地址
git remote add origin https://github.com/liuyanqing1023/pandaGenerator.git
#令将本地的master分支推送到origin主机
git push -u origin master # 失败的话尝试加个-f; -f表示以当前分支为基准,智能解决冲突
小结
- 工作区与版本库: 工作区是一个包含.git子目录(内含版本库)中的目录。我们可以用init命令在当前目录中创建版本库。
- 版本提交: 一次版本提交通常定义了版本库中所有文件的一个版本,它详细说明了该版本是由何人在何时何地创建的。当然,我们需要用add命令来确定哪些文件将被纳入下一次提交,然后再用commit命令创建新的版本提交。
- 查看信息: 通过status命令,我们可以查看哪些文件已被本地修改,以及哪些修改将被纳入下次提交。另外, log命令可用来显示提交历史。dirr命令可用来显示两个版本文件之间的差异。
- 克隆: 对于用clone命令创建某一个版本库的副本,我们称之为该版本库的克隆体。在一般情况下,每个开发者都会拥有整个项目版本库的完整克隆体,他/她的工作区中将会包含完整的项目历史。这使他们可以各自独立开展工作,无需连接服务器。
- 主送与拉回: push与pull命令可用于在本地和远程版本库之间共享版本提交
------ 码字不易如果对你有帮助请给个关注
爱技术爱生活 QQ群: 894109590