git命令

什么是分支:

你的项目进行中遇到了一个问题,解决方案不确定,但是你不希望因此影响到当前的开发,那么你可以为此创建分支,然后在分支上测试你的方案,如果可行那么可以通过合并分支功能将你的更新应用到主干,反之你可以放弃它。

git commit 时找不到bug号报错:

检查bug号,检查连接 ping bugs.wingtech.com
代码upload报错(n/a(unpacker error))修改本地文件(.git/config文件)

git push aosp HEAD -no-thin HEAD:refs/for/远程分支名
image.png
image.png

image.png

image.png

image.png

HEAD:这是当前分支版本顶端的别名,也就是在当前分支你最近的一个提交HEAD 是当前分支引用的指针,它总是指向该分支上的最后一次提交。 这表示 HEAD 将是下一次提交的父结点。
对于git reset--hard** 和git reset--soft** ,前者会直接删除掉目标HEAD之后所有的操作,且工作区和暂存区都会修改
而对于git reset--soft,该命令会将工作去的文件回退到目标版本,但是不会改变暂存区的状态。

git相关命令:
name:是服务器的地址
path:代码拉取到本地的路径
repo start name ./:在当前路径下建立分支
git branch:创建本地分支,不能跟踪远端
git branch -a :查看当前分支
git checkout branchname:切换分支
repo sync -c ./:在当前路径下进行代码的同步
git status:查看当前库的状态
git diff :在工作区查看修改内容
git diff --cached:在缓冲区查看修改内容
git checkout filename:将文件修改的内容清除
git checkout ./:将当前路径下修改的内容清除,谨慎使用
git add filename:将修改的文件提交到暂存区
git add ./:将当前路径下修改的文件提交到暂存区
git reset:将提交到暂存区的文件回退到工作区
git commit:将修改的文件提交到本地服务器
git log:查看commit信息
git log -p:一条一条的查看commit信息
repo upload --re= xxx(审核人) .:将当前路径下的文件提交到服务器上
git pull:获取最新代码,与本分支相关联的分支
git reset --hard HEAD^^:回退两个节点(最多回退六个)
git reset --hard (哈希值):回退到指定节点,并清除所有痕迹回退多了就拉回来:repo sync -c
git reset --hard HEAD^1:回退节点,并清除所有痕迹
git reflog:查看历史操作
git reset e1a912:回退到指定节点
git reset e1a912:回退到指定节点并清除所有痕迹
git reset (哈希值) --soft:将工作区的文件回退到目标版本,但是不会改变暂存区的状态。
git diff > 1.patch:将工作区修改的代码保存到1.patch文件中
git apply filepath:将保存的代码何如到新的代码中
git format-patch HEAD~1:将新建的文件夹进行备份
git apply directorypath:将新建的文件夹合入到新的库中
gitk ./:可视化的查看commit
git clean -df:清除编译垃圾
repo forall -c git reset --hard HEAD; git clean -df:遍历工程目录下每个库的编译垃圾(让代码纯净),编译垃圾清除之后,让代码同步到最新状态

abandon:针对open状态
revert:针对以及入库的提交

代码拉取步骤:
(1)新建文件夹:mkdir name
(2)拉取代码:repo init -u..............
(3)进入到.repo里面的manifest.xml,并复制相应的路径
(4)拉取代码:repo sync -c path
(5)返回到上一目录,进入该目录直到底(.git的上一层目录)
(6)创建分支:repo start branchname
(7)修改代码
(8)将文件提交到暂存区:git add ./
(9)本地提交:git commit
(10)提交到服务器:repo upload --re=xxx(审核人) .

追加提交:
(1)修改代码
(2)git add .
(3)git commit --amend
(4)repo upload --re=xxx(审核人) .

注意:repo sync -c,如果代码没有冲突,将不会进行代码的覆盖
git配置文件 :.gitconfig
git config --global user.name "xxx";
git config --global user.email "[email protected]"
git log :查看提交历史
git diff :查看文件修改
git status :查看本地修改代码与库上代码有差异的文件
git add :添加修改代码到暂存区
git commit :提交上库注释
git commit --amend :补充提交
git am :打patch
git checkout :切换分支
git checkout -- :撤销文件修改
git checkout -b work :创建work分支并切换到work分支
git reset [commit id] :版本回退
git reset --hard HEAD^ :基于上次提交回退一个(根据^个数决定)节点
git format-patch HEAD^ :生成最近一次commit的patch
git branch :查看分支
git branch aaa :创建aaa分支,但不关联远程分支
git branch -a :查看本地分支跟踪的远程分支名

你可能感兴趣的:(git命令)