最近使用git遇到了一些问题,其中一些是反复遇到的。在这里做下记录。
【教程】
关于git入门学习,廖雪峰的主页写的真的简单易懂,还配有教学视频。
【分支】
1.查看所有分支
git branch
2.切换到某一分支
git checkout 分支名 (如 git checkout dev)
【gitignore】
1.首先,修改gitignore文件,添加不需要被track的文件。如 *.idea 会忽略所有后缀为idea的文件。
2.如果文件已经被tracked了,操作1 就无效了。解决方案是先把本地缓存删除(改成untracked状态),然后再提交
git rm -r --cached .
git add .
git commit -m "update . gitigonre"
【pull】
1.pull操作用于从远程码仓向本地拉取代码,在每次开始工作前最好先执行一下pull操作,避免冲突,养成良好的习惯。
git pull origin master(此处是要拉取的远程代码的分支名)
【push】
1.正常的push流程
git status(可有可无,用于查看修改的文件)
git add . 或 git add app/src/main 或者某一文件
git commit -m "提交信息"
git push origin master(提交到master分支,视具体情况变化)
2.有时忘记pull直接push,可能会产生冲突。有些冲突git可以自动处理,有些冲突git无法自动处理,需要手动在本地修改代码,处理冲突。冲突处理以后,要添加文件并继续合并。
git add .
git merge --continue
【合并】
1.关于合并有merge和rebase两种。我目前使用过rebase一种。
假设想把master分支的内容合并到dev分支。
git checkout dev(用于切到dev分支,如果已在dev分支,可忽略)
git rebase master
【vim】
1.退出vim界面
:wq
2.有时git命令行混乱,键入 ctrl+C
3.git提交后,有时会显示vim界面,退出后,报错提示 there was a problem with the editor 'vi",原因是vim配置出错,要重新进行配置。
git config --global core.editor /usr/bin/vim
【log】
1.查看提交日志
git log
【revert】
1.如果哪次误提交了,已经commit的话,先查看想回滚到的commit版本,进行回滚
git log
git revert commit xxxxxx(某一次commit 的前6位即可)