git命令总结

恢复到刚从服务器上拉下来的状态

repo forall -c gitreset --hard && repo forall -c git clean -dfx && repo abandon mt6580_h801_master && repo sync && repo start mt6580_h801_master --all

 

抛弃本地分支,重建新分支

repo abandon mt6580_h801_master

repo sync

repo start mt6580_h801_master --all

 

提交的的时候用git单独提交,repo是整个项目提交,一般用不到,提交过程如下

cd kernel-3.18

git status

rm drivers/misc/mediatek/xxx.txt                              //删除不需要的文件

git add ./                                                                            //添加当前目录下修改过的所有文件

git reset HEAD drivers/misc/mediatek/Kconfig      //恢复不用提交的文件

git status                                                                           //查看要提交的信息是否正确

git commit                                                                         //提交填写提交信息

git branch -a                                                                     //找到远程分支X522_H539_native(箭头后面)

git push origin HEAD:refs/for/X522_H539_native           //推送到远程分支

 

提交出错处理

git reset HEAD --mixed

git reset --mixed HEAD^

 

代码同步

http://www.cnblogs.com/highriver/archive/2012/01/05/2313808.html

cd kernel-3.18

git stash

git pull --rebase

git stash pop

 

同步vendor目录下custom代码

 

http://www.bubuko.com/infodetail-814578.html

git checkout kaili.txt 撤销工作区和暂存区kaili.txt的差异


git reset HEAD~1撤销提交

git reset HEAD~1提交前



git reset HEAD~1提交后



http://www.bubuko.com/infodetail-814578.html

参数--hard/--soft/--mixed(默认)


代码更新(导师)

git reset --hard

git pull --rebase



更新之前的操作

http://blog.csdn.net/wh_19910525/article/details/8233858

git clean -fd


 

只更新kernel

git status 
git log
git pull
git log
cd ..
rm -rf out/target/product/rlk6753_65u_m0/obj/KERNEL_OBJ/
cd kernel-3.18/


 

分支与合并(理解下面问题背景在git中的解决方法)

1. 开发某个网站。
2. 为实现某个新的需求,创建一个分支。
3. 在这个分支上开展工作。
假设此时,你突然接到一个电话说有个很严重的问题需要紧急修补,那么可以按照下面的方式处理:
1. 返回到原先已经发布到生产服务器上的分支。
2. 为这次紧急修补建立一个新分支。
3. 测试通过后,将此修补分支合并,再推送到生产服务器上。
4. 切换到之前实现新需求的分支,继续工作。

1、建立issue53分支,开发新功能

git checkout -b issue53

vi index.html

git add index.html

git commit -m "commit issu53" index.html

2、接到紧急问题,切换回主分支建立新分支hitfix处理

提交修改

git checkout master

git checkout -b hitfix

vim index.html

git add index.html

git commit

git checkout master

git merge hitfix //Fast forward

git branch -d hitfix

3、紧急问题处理完毕,回到issue53继续开发

git checkout issue53

。。。。。。

4、合并新功能到主分支

git checkout master

git merge issue53 (4.1)

git branch -d issue53


冲突解决

4.1可能出现合并冲突

git merge issue53


git status


冲突文件加入的标记


手动修改冲突后,确保问题已经解决

->git add

->git status

->git commit




查看分支合并情况

git branch --merge/--no-merged

git branch -d/D(强制删除) issue53


发布了22 篇原创文章 · 获赞 5 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章