git推送本地仓库到远程 以及 模拟多人协作
推送本地藏度到远程
准备工作:在本地新建一个文件夹 使用git init 命令进行初始化 并穿件一个a.txt文件
修改本地仓库用户名
git config --local user.name '鲁智深'git config --local user.mail 'luzhishen@126.com'
push命令
在github或者gitee上创建仓库 复制该空仓的链接 本地仓库上传并与之关联
使用
git remote add origin 链接
添加后 远程库的名字就是origin 这是git默认的名字
然后查看本地仓库配置文件中的配置信息是否更改
然后使用下面推送本地库文件
git push -u origin master
注意如果在创建仓库的时候同时创建了.gitignore文件以及readme文件需要先拉去远程仓库的两个文件在进行推送
使用下面命令可以查看远程的仓库
查看远程仓库
git remote show
常看远程仓库明细
git remote show origin
远程仓库查看
查看远程分支
git branch -a
带上参数v可以查看本地分支和远程分支的最后提交
git branch -av
接下来我们可以在进行一次推送练习
修改我们这个本地仓库中提前好的a.txt文件
我们通过git status可以看到我们master分支和远程分支origin/master都是最新的。
此时我们提交我们的修改后在查看git status,我们可以发现我们的本地master分支领先了1次提交。从分支的详细信息中我们可以看到远程分支的提交版本和master的提交版本不同,本地领先了。
此刻我们把本次修改推送到远程,远程和本地便保持了版本的同步
模拟多人协作
项目克隆
把复制刚才远程仓库的链接 进行本地克隆
git clone 链接如果想要克隆下来的项目是别的名字使用下面命令git clone 链接 新名字
发现克隆下来的仓库和远程仓库一致 进入仓库可以看到.git的配置文件和远程代码
多人协作
创建林冲仓库
克隆远程仓库命令testGit1
指定仓库级别用户和邮箱
git config --local user.name '林冲'
git config --local user.email 'linchong@txjava.com'
协作处理
在testGit中通过鲁智深添加文件并且推送到远程
现在testgit1仓库中使用 git remote show origin 发现状态已经过期
此时林冲 使用git pull命令来更新拉取
冲突处理
当两个人修改同一个文件的同一行的时候就会发生冲突
我们使用鲁智深修改B.txt内容后
提交并且推送到远程
此刻林冲也修改B.txt内容:
我们提交并且推送远程的时候发现出现冲突,推送失败
此刻git要求我们先拉取更新
但是我们拉取时候会发现拉去成功但是自动合并失败 git建议我们修改冲突后提交
分支推送协作
创建dev分支
发现git push无法把dev分支推送到远程
git push --set-upstream origin develop
git push --set-upstream origin developgit push -u origin 分支名
我们可以使用这个命令这两个命令完成远程分支创建以及推送
分支拉去协作
由于鲁智深已经推送 我们使用林冲账户进行拉取 我们可以看到建立了分支
没有本地的dev分支
这时我们可以创建本地的develop分支,此刻我们也可以修改本地分支的名字
git checkout -b develop origin/develop |
我们创建分支并切换到dev上 且改分支和远程分支dev关联
远程分支删除
我们在鲁智深仓库删除Feature分支,删除之后远程的dev分支关联还在。
我们也可以删除对应的远程分支
git push origin --delete dev |