git常见操作说明_案例
前提已安装windows-git
1、本地创建一个项目
2、在目录下右击,打。开git窗口
第一步、初始化仓库 git init。初始化后,项目目录下出现隐藏目录.git,这个隐藏目录存储了所有的历史版本记录和配置信息
一、配置签名
第二步、配置签名,每次提代码都要知道是谁提的代码。回到git窗口,git config user.name "zhang3" ,git config user.email"zhang3@163.com"
配置完后可以隐藏目录下找到config。故也可以直接在隐藏目录下的config中修改。
假如工作中又来了一个项目,但这个项目的账密想签别的名字。可以在工程下。
但在公司开发,多个项目都一样的配置就没必要放在隐藏目录下,可直接配全局的。。config --global
全局的配置默认存在放在C/Users/Adminnistator/.gitconfig
优先用项目中的配置,如果项目中没有,则用全局的配置。
二、提交代码
git status 确认目录下有哪些代码待提交或没有提交. 下面显示成红色没有提交
git add src,即提交了src 此src为文件夹。提交后,则会变绿。变绿代表进入了”暂存区“,并没有真正提交到服务器上。
但不建议使用提交整个文件夹,应特别指定文件来提交。所有文件全提,容易出错。
git commit -”提交说明 “ 提交至服务器。将”暂存区“(绿色的内容)提交至服务器。
这里再敲git status,发现没有内容了。这是因为暂储区没有待提交的内容了。
我们改下目录下的文件,再执行git status,此时被修改的文件变成了红色意味着可以提交。可对该文件进行git add src/abc.java 提交至”暂存区“
删除某个文件,再执行git status,被 修改的文件为成了红色意味着可以提交,对删除的内容进行删除。
三、查看提交记录
git log --pretty=online
四、退版和回滚版本
退版 git reset --hard HEAD^(退回前一个版本)
此时再看个git log --pretty=online,可以看到退加以了到04
退回多个版本怎么退? git reset --hard HEAD~2..显示create o1,代表退回来了
-------------------------------------------------------------------------
此时又回滚到最新版本,怎么办?
git reflow (记录所有本地进行的操作,可以查到已被回退的版本)
git reset --hard 版本号
再看log,又回到了历史04的时候
四、代码还原
假设没啥事,去看看别人的代码,然后拿别人的代码去改改并没有提交。突然有一天项目经理正要你改这个代码文件。怎么办?
不能直接在自己已改的地方,而是要还原到别人写的那个时候的代码来改。
git checkout 进行还原
没有上传的还原用checkout,这还有一种情况已上传,要撤回来,怎么办?
先在本地手动删除,然后执行git status ,查看到删除的变更git add. 至暂存库,再git commit
四、创建、切换、合并分支
五、代码冲突处理
git branch -v 查看分支状态。下图两个分支版本一致
在master改其中一个文件,git add bcd.java git commit -m "AAA"
切到dev分支,也改bcd.java,也同样git add bcd.java git commit -m "BBB"
这时,这两个分支都改了bcd.java,如果两个分支进行合并,则会出现冲突
切到主干支,执行git branch -v,发现版本不一致了。merge 时,出现冲突
回去项目,改bcd.java, 再提交git add bcd.java. 然后再提交。