一:首先讲解git的安装与配置
1:安装git(方法-略)
2:检查配置:
git config user.name
git config user.email
以上两项若无配置信息执行配置命令
git config --global user.name "kentrl" //注意,--和global之间没有空格
git config --global user.email "kentrl@qq.com"
git config core.ignorecase false
--------------执行完成后回到2检查配置,通过就ok
3:检查且生成ssh-key--------检查方法,到自己的家目录下面去找 .ssh的文件夹,里面是否有两个文件
若没有上面两个文件,执行如下命令生成密钥
ssh-keygen -t rsa -C "kentrl@qq.com" ------- 一路狂奔回车,不必输密码。
目录下面多出了秘钥文件(.pub是公钥)
C:\Users\Administrator\.ssh\
查看配置
git config --list
4:去码云https://gitee.com/profile/sshkeys 输入公钥。
5:测试配置
ssh -T git@git.oschina.net
当终端提示welcome to Gitee.com,yourname!表示链接成功。
另附:查看和修改git的remote url
使用命令 git remote -v 查看你当前的 remote url
$ git remote -v
origin https://github.com/someaccount/someproject.git (fetch)
origin https://github.com/someaccount/someproject.git (push)
如果是以上的结果那么说明此项目是使用https协议进行访问的(如果地址是git开头则表示是git协议)
复制码云上的ssh链接或HTTP连接,然后使用命令 git remote set-url 来调整你的url。
git remote set-url origin git@github.com:someaccount/someproject.git
然后你可以再用命令 git remote -v 查看一下,url是否已经变成了ssh地址。
分支管理与使用
软件中的分支介绍(实际按公司项目为准)
创建分支的两个方法:
合并分支
==注意:== 首先要切换到被合并的分支上,再进行合并操作。
分支合并时,可以选择具体的某提交进行合并,同时主分支可以合并到子分支;子分支可以合并到主分支;子分支之间也可以进行合并。
推送分支到远程仓库
SourceTree&Git部分名词解释
克隆/新建(clone):从远程仓库URL加载创建一个与远程仓库一样的本地仓库
提交(commit):将暂存文件上传到本地仓库(我们在Finder中对本地仓库做修改后一般都得先提交一次,再推送)
推送(push):将本地仓库同步至远程仓库,一般推送(push)前先拉取(pull)一次,确保一致
拉取(pull):从远程仓库获取信息并同步至本地仓库,并且自动执行合并(merge)操作,即pull=fetch+merge
获取(fetch):从远程仓库获取信息并同步至本地仓库
分支(branch):创建/修改/删除分枝
合并(merge):将多个同名文件合并为一个文件,该文件包含多个同名文件的所有内容,相同内容抵消
贮藏(git stash):保存工作现场 丢弃(Discard):丢弃更改,恢复文件改动/重置所有改动,即将已暂存的文件丢回未暂存的文件
标签(tag):给项目增添标签
工作流(Git Flow):团队工作时,每个人创建属于自己的分枝(branch),确定无误后提交到master分支
终端(terminal):可以输入git命令行
每次拉取和推送的时候不用每次输入密码的命令行:git config credential.helper osxkeychain sourcetree
检出(checkout):切换不同分支
添加(add):添加文件到缓存区
移除(remove):移除文件至缓存区
重置(reset):回到最近添加(add)/提交(commit)状态
请求与主分支合并 (Pull Request) ---- 英文要表达的意思是:请求上级拉取合并我的项目,具体解释如下:
有一个仓库,叫Repo A。你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Github账号下有了一个Repo A2,。然后你在这个A2下工作,Commit,push等。然后你希望原始仓库Repo A合并你的工作,你可以在Github上发起一个Pull Request,意思是请求Repo A的所有者从你的A2合并分支。如果被审核通过并正式合并,这样你就为项目A做贡献了
写完我们的代码,如上上传仓库后,点击下图按键
进入Compare页面,比较我们与作者的文件->点击Create pull request->填写上传描述->等待作者自己合并项目即可
更新来了-> SourceTree冲突解决SourceTree冲突解决(Windows)_默尛铭的博客-CSDN博客_sourcetree 有冲突 下拉失败
解决冲突:
解决冲突:把上图符号删掉,将冲突标记为已解决,重新提交推送到远程仓库即可.
本地local修改好代码后,暂存到仓库
1:选中修改的文件,右键选择 stash selection 将文件暂存起来
2:将主分支上的文件拉取到本地
更多解决办法: