常用git命令

Posted huaibin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用git命令相关的知识,希望对你有一定的参考价值。

git 删除远端分支:

  1.先查看远端分支:git branch -a

  2.删除指定的远端分支: git push origin --delete 1.0.0/feture/lbb-fix-test

拉取最新代码
  git fetch --all
从云服务器回退到上一个版本:
  git reset --hard origin/5.8.7R2/feature/add-service-delete-itest


git fetch -- .
git reset --hard origin/5.8.7R2/feature/add-service-delete-itest

git fetch -- .
git reset --hard origin/5.8.7R2/feature/add-service-delete-itest


创建并切换分支:
  git checkout -b 分支名

只切换分支:
  git checkout 分支名

查看当前状态:
  git status

添加:
  git add 指定的修改后的文件

提交到本地:
  git commit -m [类型]详细信息

推送到远程:
  git push origin 远程指定的分支(一般都是自己当前所在的分支名)

合并分支:
  git merge 子分支(就是你从主分支切出来的自己的分支,你在这个分支上面进行编码操作之后,需要先切换回主分支,然后执行这个命令)

回退到指定版本:
  git reset hard --版本号

获取远程分支master并merge到当前分支:
  git pull origin master

图示当前分支历史:
  git show-branch

撤销提交dfb02e6e4f2f7b573337763e5c0013802e392818:
  git revert dfb02e6e4f2f7b573337763e5c0013802e392818

注意:一定要先查看git status 当前状态之后,再去执行 add 或者 commit 的操作.

 

修改分支名:

  1.git branch -m 旧的分支名 新的分支名(新建新分支并切换到新分支)
  2.git push -u origin 新分支(将新分支推送到远程)
  3.git push -u origin :旧分支(删除远程的旧分支)

注意:修改完分支名之后还需要重新提交合并merge请求.


合并多次提交:

  1.git rebase -i 起始点(注意不是自己开始的那个,是其他人开始的那个节点,合并的时候并不包括这个节点)
  2.接着按s合并多次提交commit
  3.接着按#注释掉提交记录说明
  4.最后 git push origin 你远端对应的分支 -f
这样就可以了.


解决在Git 命令输出中的中文文件名显示问题:
  git config --global core.quotepath false


同时更新两个分支:
  git push origin -u 当前所在分支:另外一个新的分支

 

git push origin 分支a:分支b
  分支a就是你当前所在分支对应的远程分支
  分支b是你的a分支合并到的(或者说需要同步更新的目标分支)的分支

直接把分支改动推送到合并的目标分支
  git push origin 5.9.0R2/feature/lbb-add-test-case:5.9.0R2/feature/add-itests -f


配置git多远端:
  git remote add icloud xxx(url)
  git pull icloud
  git push icloud xxx(branch)

注:icloud是对应的项目名


删除远端分支:
  git branch -r -d origin/branch-name
  git push origin :branch-name

删除远程分支:
  使用命令 git push origin --delete Chapater6 可以删除远程分支Chapater6

 

git stash pop 冲突解决
git stash show -p | git apply && git stash drop

 

git 查看远程仓库地址:
  git remote -v


多次合并commit:

  1. git add .

  2. git commit --amend

  3. 不需要填commit信息

  4. 直接git push 远端 -f

 

sublime多行操作:
多行同时操作:ctrl + alt + 向下箭头/向上箭头

sublime 全部选中一起修改: alt + ctrl + 下箭头 选中,然后按ctrl + d


Python在真实的linux环境中的安装路径:
/usr/lib/python2.7/site-packages


shell终端修改显示颜色和样式等的命令:
PS1="[e[01;31m]u@h [e[01;36m]w [e[01;32m]o [e[00m]"

批量杀掉进程:
ps -aux|grep "pytest"|awk ‘{print "kill -9 "$2}‘|sh

这里是批量杀死进程名包含xxx的进程,记录做个备忘:
ps aux|grep pytest|awk ‘{print $2}‘|xargs kill -9

杀掉pytest进程的命令:
ps aux | grep ‘python -m pytest‘ | awk ‘{print $2}‘ | xargs kill -9


pytest 插件介绍:
官方文档:
https://docs.pytest.org/en/latest/_modules/_pytest/hookspec.html#pytest_collection

测试库集合链接:
https://github.com/china-testing/python-api-tesing

 

git stash 操作:

  1.git stash list : 显示当前缓存区的文件

  2.然后你就可以 执行 git stash clear :注意这是清空你所有的内容

  3.git stash drop stash@{0} 这是删除第一个队列

git 使用在一个分支写完之后,可以先在这个分支的基础上新建一个分支,然后再推送,然后再去远端提合并请求

 

有时候会想把github上的文件删除,但是本地仓库里的文件想保留下来该怎么办,只要用三条命令就能完成了:
  1.git rm --cached filename/-r directory
  2.git commit "xxxx"
  3.git push

 


9. .gz格式:
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName

.tar.gz格式:
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
解压至指定目录: tar zxvf FileName.tar.gz -C ./DirName


10. 打一个发行包,直接上传至pypi,可以使用 pip install 安装包名字 这个命令安装的
python setup.py sdist


python -m 中的-m参数是将库中的模块用作脚本去执行.相当于 import xxx模块名 导入后使用.

 

博客地址:
https://www.cnblogs.com/Zzbj/default.html?page=1

 


修改CentOS ll命令以 K 为单位显示文件大小

1.编辑 .bashrc 文件:
vim /root/.bashrc

2.找到 alias ll 行修改为(如果没有直接添加该行):
alias ll=‘ls -lh --color=auto‘

3.运行 source /root/.bashrc 使得修改配置生效:
source /root/.bashrc

4.再次运行 ll 查看效果:ll
total 12K

 

ll 是 ls -l的别名,之所所以 ll出现错误是因为没有定义别名.

如果要实现ll 命令,可以做如下操作:

1.编辑 ~./bashrc 添加 ls -l 的别名为 ll即可

vi /root/.bashrc

2.编辑文件内容:

# User specific aliases and functions

alias rm=‘rm -i‘
alias cp=‘cp -i‘
alias mv=‘mv -i‘
alias ll=‘ls -l‘

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

PS1="[e[01;31m]u@h [e[01;36m]w [e[01;32m]o [e[00m]"


3.按下: 后再按wq保存

4.执行source /root/.bashrc 使得配置修改生效

5.终端执行ll即可看到命令已生效

 

systemctl status docker


如果遇到:

Error response from daemon: Container 144f241075e3f088907c8e105bda1f9c4033af285c62580c751b3245c6a4c39a is not running


1.查看当前所有docker镜像:

docker ps -a


2.启动镜像:

docker start 镜像对应的id


3.进入测试环境:

docker exec -it 镜像名称 /bin/bash

 

systemctl daemon-reload
service docker restart

 

window7 主机 远程的ubuntu的主机 ubuntu中的docker(acloud镜像:其本质就是改装版的centos系统镜像iso) 三者之间的关系:

形式上彼此之间互相独立.

ubuntu中的acloud镜像寄存在ubuntu主机.

之前使用pycharm远程编译环境时,是windows通过ssh连接ubuntu主机,调用其中的python编译器
现在使用ubuntu中的docker(acloud)python 编译器时,
需要先把acloud中的端口映射(就是关联,暴露出来,意思就是留一个入口给宿主机ubuntu,
这样才能让外部的windows主机来访问到docker中的acloud的python编译器)

修改docker中的配置信息,使其支持使用tcp协议
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375


源码方式安装 lrzsz库:
https://www.cnblogs.com/cocoajin/p/11731787.html

 

我们都知道安装了lrzsz工具的linux系统环境;

在shell里可以非常方便的上传和下载linux里面的文件;

通常的安装方式:

yum install lrzsz

sudo apt-get install lrzsz

 

那么当无法用软件包方式安装时;可以直接使用源码方式安装;

1. 下载tar.gz的源码包:https://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz

2. 在linux环境使用wget下载或curl

wget https://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz

3. 解压:

tar -xzvf lrzsz*.tar.gz

4. 编译安装:

先进入lrzsz库解压后的路径,然后执行下面命令

  ./configure

  make

make install

5: 环境配置:

默认安装在了 了/usr/local/bin/ 目录;

需要在/usr/bin目录做软连接;

  cd /usr/bin

  ln -s /usr/local/bin/lrz rz

  ln -s /usr/local/bin/lsz sz 

 

6:如果遇到 rz 上传文件失败,请尝试使用sudo rz

7: 可以把 rz,sz权限设置成777,解决权限问题

sudo chmod 777 /usr/libal/bin/lrz

sudo chmod 777 /usr/libal/bin/lsz

 

mysql 授权:
grant all privileges on *.* to ‘yangxin‘@‘%‘ identified by ‘yangxin123456‘ with grant option;


二、导入数据库
使用 mysql 命令导入
使用 mysql 命令导入数据库格式如下:

mysql -u用户名 -p 数据库名 < 数据库名.sql

三. 导出数据库

如果你需要导出整个数据库的数据,可以使用以下命令:

$ mysqldump -uroot -p 数据库名 > database_dump.sql


四:mysql 使用 G 行变列查询报错:
ERROR: No query specified
出现此错误是sql不合法原因:

G后面不能再加分号;,因为G在功能上等同于;,如果加了分号,那么就是;;(2个分号),SQL语法错误

有些时候数据库配置有改动,则先去查找mysql的配置路径:

导出数据库:
mysqldump --socket=/var/run/mysqld/mysql.sock -uroot -p cloudmanager >cloudmanager.sql


导入:
mysql --socket=/var/run/mysqld/mysql.sock -uroot -p cloudmanager < cloudmanager.sql


CentOS踢除已登录用户的方法:

先按下w查看用户终端号

pkill -kill -t pts/1 (pts/1为w指令看到的用户终端号)

以上是关于常用git命令的主要内容,如果未能解决你的问题,请参考以下文章

Git常用命令收集

Git常用命令

Git常用命令

Git常用命令

:常用工具命令第25节:常用命令 - Git命令

Git常用命令