git学习
#工作目录 暂存区 git仓库 git config --global user.name test git config --global user.email test@126.com
git config --list
#本地仓库 git init
git status git add index.html git commit -m 第一次提交 git rm --cache
#暂存区 覆盖 工作目录 git checkout index.html git log git rest --hard commitID
git分支,分支之间是独立的,没有联系的
#master主分支
#查看分支
git branch
#创建分支
git branch 分支名 git branch develop
#切换分支
git checkout 分支名 git checkout develop
#切换分支要保证 提交干净了 nothing to commit, working tree clean
#如果add 新建的文件,没有提交就切换分支,则暂存区里面的文件也会出现在切换后的分支里面,携带到其他分支
#合并分支
git merge 来源分支 合并分支
#在主分支的角度,合并开发分支 合并完成后,开发分支是依然存在的,可以继续开发 开发分支
git checkout master
git merge develop
#删除分支 如果删除的分支没有被合并,是不允许删除的,git防止误删除 需要站在主分支上再去删除吗?
git branch -d develop
#强制删除
git branch -D test
#暂时保存修改,类似剪切板功能
在git中,暂时提取分支是所有改动并存储,让开发人员得到一个干净的工作副本(nothing to commit, working tree clean),临时转向其他工作
存储临时改动 git stash #stash 存放
恢复改动 git stash pop
在执行命令之前,一定要搞清楚所在分支
远程仓库
github
#远程仓库名称很长,使用git remote add 给远程仓库起别名 origin ,方便提交, 可以任意取名;
# git remote add 远程仓库别名 远程仓库地址
git remote add origin https://github.com/zwj-01229/git-demo.git
-u 记住推送地址及分支地址,下次推送只需要输入git push即可
git push 仓库地址 分支名
git push -u origin master #提交到远程仓库 指定远程仓库 分支名
#第一次会输入git账号、密码,windows会把账号密码保存在 控制面板\用户帐户和家庭安全\凭据管理器 里面,后续就不用再输入了
-u 等于设置一个默认值,单使用非默认值时,指定 仓库名(使用简短的别名origin),分支名
git pull origin csx_dev
#在没有本地仓库的基础上进行,命令在第一次运行
git clone 远程仓库地址
邀请其他开发者 仓库settings
#拉取远程仓库中最新的版本,在已经有本地仓库的基础上进行
git pull 远程仓库地址 分支名称
#必须先拉取远程仓库再提交
git pull 再 git push
冲突解决:
找到冲突,在编辑器里面
删掉冲突开始,在冲突结束等
#跨团队合作
#pull request
#fork
#merge pull request
#ssh免登录
#公钥私钥配对
ssh-gen 一路回车,默认配置
c:/用户/当前使用用户/.ssh/id_rsa_pub 公钥 id_rsa 私钥