git操作说明
1 首先,在git中配置用户名和邮箱。在Git Bash中输入如下:
git config --global user.name "xxxxxxx"
git config --global user.email "[email protected]"
2 克隆分支
整理好git后,开始克隆,打开SourceTree开始克隆。具体为点击“克隆/新建”,输入相应的源路径/URL,之后输入用户名和密码即可进行,在克隆的地方可以查看克隆的文件。
3 新建分支
在克隆的文件夹下,新建自己的分支,此分支是基于刚克隆项目的分支,如上面克隆的分支是master,此分支是在master下生成的分支。例如为test。
(
*******输入的分支名字,且必须分支选择为remotes下origin下develop分支*****
)
4 修改后commit
在创建分支后,对于自己的修改只是自己分支的修改,修改后,进行commit。
commit前为红色,commit后为绿色。成功最后面显示success。
commit后把自己创建的分支提交push上去。
通过修改后,提交结果,Push到服务器,让测试人员进行测试。Push时一定记得是Local和Remote相同,一定不要成develop,否则就覆盖了。
建立完分支后,可以去网站查询。
5 打开编辑
可以用sublime_text打开克隆的项目,具体如下。app为模板项目,不需要修改。需要修改的地方static下src目录的文件。
6 切换分支
用TortoiseGit-》Switch/Checkout。进行切换即可。
7 查看分支
查看远程分支 git branch -a
查看本地分支 git branch
8 删除分支
删除远程本地分支,用Git Bash去处理。在工作的地方Git Bash Here
之后输入,git branch -r -d origin/branch-name(可以不执行)
和 git push origin :branch-name
提示输入用户名和密码,即可完成远程删除操作。(删除了远程分支,本地分支仍然存在)
删除本地分支 git branch -d 分支名(即可删除)
注:该分支不在使用,使用时无法删除该分支。
此时输入git branch -D test_feature2016zhouy ,即可完成删除。
9 问题以及解决方案。
you need to resolve your current index first。因为产生了冲突。故需要回退到合并前。
解决方案如下:
git reset --merge
10 git出现文件状态图标不显示
注册表
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers这一项。
修改tortoise相关的名称(如加一个.前缀,并加数字)。之后重启explorer.exe即可。
11 Chrome出现
net::ERR_CONNECTION_REFUSED
在进入内网,输入用户名和密码即可。
11 Please, commit your changes or stash them before you can merge.Aborting
git reset --hard
12 Please move or remove them before you can merge.Aborting
git clean -d -fx ""
13 git无法克隆,提示文件名太长,可以克隆,但无法checkout。
方法一、设置 git config --global core.longpaths true,即可
方法二、只需把这个文件名进行赋权限即可。(即你没有操作这个文件的权限)
14 git分支强制推送
git push -f origin master
注释: origin
远程仓库名, master
分支名,-f
为force,意为:强行、强制。
15 如果无法推送到指定仓库,去sourceTree查看设置,参考远程仓库是否正确。
16 git合并说明。
如果想合并ma分支到zhou分支,则只需切换到zhou分支,在ma分支点击右键,之后选择合并ma至当前分支。如下图
17 git解决冲突说明(ma分支到zhou分支)。
如果git在合并时,出现 冲突,让你工作副本中去解决,按提示去消除。
如果,解决冲突-》选择 使用“我的版本”解决冲突,则此时使用的是自己切换的版本,即zhou版本,即该文件夹,不改变。否则,选择”使用他人版本“来解决,则此时使用的 是 ma的版本的那个文件(testzhou.txt文件)。(解决重点在下面)
解决方法:
zhou分支上有:
// 老接口lodInterface
url: "lodInterface",
//////////////////////
下面还有很多新的东西:
that.test();
ma分支上有多余的:
mamamamammdmdmddddd---
mamamamammdmdmddddd---
mamamamammdmdmddddd---
mamamamammdmdmddddd---
新接口:
url: "newInterface",
在合并的时候,按上面的操作,到有冲突的时候,下面真正开始解决。看到右下面有很多块。就是不同的区域块。
上面老接口为合并的zhou分支,下面url
url: "newInterface",为ma分支中的新的内容,如果点击“放弃Hunk”,则保持 zhou分支的
// 老接口lodInterface
url: "lodInterface",
//////////////////////
而不添加ma分支的内容。
可以去编辑器,直接操作,添加该添加的内容,去掉该去掉的内容。
整理成
最后保存,点击添加即可。
18 Git忽略添加
版本库从Git版本库拉下后,如果想忽略某些文件,只需选择文件,点击右键,找到对应即可,具体如图。