git常用操作总结:

264 阅读4分钟

pwd:显示当前目录的路径
dir :查看目录下的文件
git init:把当前的目录变成可以管理的git仓库,生成隐藏的.git文件
mkdir XX:创建一个文件夹rm -r xx  删除文件夹touch xx:新建xx文件
rm xx :  删除XXw文件
cat xx:查看xx文件内容v
i  xx : 编辑文件 =》 i 进入编辑 
esc :wq 退出编辑
git add xx:把xx文件添加到暂存区
git commit -m “xx”a.txt :提交文件 -m后面的是注释
git status:查看仓库状态
git log:查看历史记录 提交记录可能会非常多,按 J 键往下翻,按 K 键往上翻,按 Q 键退出查看
git reset --hard HEAD^:往上回退一个版本
git reflog:查看历史记录的版本号id
git checkout -- xx:把xx文件在工作区的修改全部撤销
git rm xx:删除xx文件 之后要commit
git remote add origin https://github.com/qiuhaifeng01/a.git 关联一个远程库
git push -u(第一次要用-u以后不用)origin master:把当前master分支推送到远程库
git clone https://github.com/xxxxx   从远程库中克隆
git checkout -b dev:创建dev分支 并切换到dev分支上
git branch:查看当前所有的分支
git branch -m daily/0.0.0 daily/0.0.1 修改分支名 
git branch -vv  查看带有最后提交id、最近提交原因等信息的本地版本库分支列表
git checkout master:切换回master分支
git merge dev:在当前分支合并dev分支
git branch xxx:创建分支xxx
git branch -d dev:删除dev分支
git remote:查看远程库信息
git push origin master:git会把master分支推送到远程库对应的分支上
git diff  -记录目前版本和距我最近的版本有什么差异
-------------------------------------------------------------------------------------------
git reset —hard 728068b0ba723f57c53dde168ab7dd52c93f9552 回退到指定版本
git push -f origin new_dev 强推
git push origin 分支名 --force 强制覆盖线上代码
git放弃本地所有修改,强制更新
git fetch --allgit reset --hard origin/master
git fetch 只是下载远程的库的内容,不做任何的合并
git reset 把HEAD指向刚刚下载的最新的版本
 -------------------------------------------------------------------------------------------
git  stash   将未提交的文件保存到Git栈中
git  stash list  查看栈中保存的列表
git  stash show stash@{0} 显示栈中其中一条记录
git  stash drop stash@{0} 移除栈中其中一条记录
git stash pop  从Git栈中检出最新保存的一条记录,并将它从栈中移除git  stash apply stash@{0} 从Git栈中检出其中一条记录,但不从栈中移除git  stash clear  清空栈里的所有记录
----------------------------------------------------------------------------------------
##远程删除的分支在本地消除1  git remote prune --dry-run origin 查看当前有哪些是该消失还存在的分支
2 git remote prune origin 删除上面展示的所有分支
3 git fetch --prune origin
-----------------------------------------------------------------------------------------
:q(包括HEAD^^、HEAD^^^、以及以此类推 HAED~number)这三种命令,
:w  保存:w filenme 另存为
:q   退出:wq  保存并退出
:e! 撤销更改返回到上一次保存状态
:q! 不保存强制退出
:set nu 设置行号命令模式  
ZZ(大写)保存并退出命令模式 
u 辙销操作,可多次使用命令模式 
dd 删除当前行命令模式  
yy 复制当前行命令模式  
p 粘贴内容命令模式  
ctrl+f 向前翻页命令模式  
ctrl+b 向后翻页命令模式  
敲 i 进入编辑模式,当前光标处插入命令模式 
敲 a 进入编辑模式,当前光标后插入命令模式 
敲 A 进入编辑模式,光标移动到行尾命令模式  
敲 o 进入编辑模式,当前行下面插入新行命令模式  
敲 O 进入编辑模式,当前行上面插入新行
-------------------------------------------------------------------------------------------
不用每次输入用户密码git config --global credential.helper store   //长期保存面
# git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
# 1.查看git配置信息$ git config --list# 
2.查看git用户名、密码、邮箱的配置$ git config user.name$ git config user.password$ git config user.email# 
3.设置git用户名、密码、邮箱的配置$ git config user.name "freedom"$ git config user.password "123456"$ git config user.email "1548429568@qq.com"# 
3.设置git用户名、密码、邮箱的配置(全局配置)$ git config --global user.name 用户命$ git config --global user.password 密码$ git config --global user.email "1548429568@qq.com"
-------------------------------------------------------------------------------------------
问题:remote: HTTP Basic: Access denied     fatal: Authentication failed for 'http://gitlab.cifi.com.cn/investmodel/pc.git/'
解决方案:
1. 如果账号密码有变动 用这个命令 git config –-system –-unset credential.helper 重新输入账号密码 应该就能解决了
2. 如果用了第一个命令 还不能解决问题那么 用这个命令:git config –-global http.emptyAuth true
3.不用每次输入用户密码git config --global credential.helper store   //长期保存面
-------------------------------------------------------------------------------------------
ssh 配置:
ssh-keygen -t rsa -C "gy_shenglf01@cifi.com.cn"
cat ~/.ssh/id_rsa.pubgit remote -v
git remote set-url origin ssh://git@gitlab.cifi.com.cn:2288/investmodel/pc.git

                                                                              20200630