Git]常用命令手册

💯努力构建Git的完整图景

参考地址

命令行指令

git fetch origin #远程有新分支,使用这句话才能让接到新分支,因为本地没有同步到远程信息

删除分支

git branch -d <分支名>
git push origin :<分支名>

撤销

# 撤销add
git reset HEAD #撤销所有add
git reset HEAD xxx.x #撤销xxx.x文件

# 撤销commit
git reset --soft HEAD^

察看

察看

git status      #查看仓库状态
git log         #查看历史记录
git diff  XX    #查看XX文件修改了那些内容
git reflog      #查看历史记录的版本号id
git remote show origin #查看各分支情况
git remote -v   #查看远程git地址

添加、修改、退回、提交

git add XX           #把xx文件添加到暂存区去。

git checkout .       #返回本地所有没有提交的内容
git checkout – XX  	 #把XX文件在工作区的修改全部撤销。

git commit –m “XX”   #提交文件 –m 后面的是注释。


git reset –-hard HEAD^ 		#回退到上一个版本
git reset –-hard HEAD~ 		#回退到上一个版本
git reset –-hard HEAD~100  #退到上100个版本


git rm XX          		#删除XX文件

git remote rm origin  #删除与远程已有的链接

git clean -df 				#对于新增的内容用此方法 ##完全删除##

克隆分支

git clone -b `分支名` `<远程地址>`

添加远程仓库

git remote add <shortname> <url>
git remote add origin `https://...exp.git` #关联一个远程库到origin

git pull <远程分支>:<本地分支>
git fetch <remote_name> <branch_name>

推送PUSH

#git push <远程主机名> <本地分支名>:<远程分支名>
git push origin zombie1.0:zombie1.0
git push origin master

注意 这里的:前后是必须没有空格的

添加追踪

如果没有添加追踪我们每次提交都需要按上边的格式输入,这样效率大大的降低了,为了让我们以后能少敲代码,我们需要按以下做:

  • 当前分支推送到origin主机的对应分支

    git push origin

  • 在第一次push的时候添加-u选项

    git push -u origin <远程分支名>

    • $ git push -u origin master

    等于 git push --set-upstream origin <远程分支名>

  • 只有一个追踪分支,可省略主机名

    git push

追踪关系

  1. 建立本地仓test 并建立追踪关系,如果建立了本地仓也建立了追踪会修改追踪关系( 建议使用)
  • git branch --set-upstream test origin/master
  1. 建立test仓库 并建立追踪关系 
  • git branch --track test origin/develop
  1. 修改追踪关系 切换到test 
  • git checkout test
  1. 修改追踪仓库(一定要先切换)
  • git branch --set-upstream-to  origin/master

删除远程分支

#git push origin :<远程分支名> // 提交空到远程分支
git push origin :dev-1.0.0
#git push origin --delete <远程分支名>
git push origin --delete dev-1.0.0

分支


注意: git clone 命令只会拉到master分支,如果要切换到其他分支则要使用git checkout -b [本地] [远程]

git branch <分支名> #新建分支

#切换分支
git checkout <分支名> #切换分支

#从当前分支创建新的分支并切换
git checkout -b <分支名> #新建+切换分支 

#拉取别人的分支到本地
git checkout -b <本地分支名> <远程分支名>#新建+切换+从远程拉取分支 
	git checkout –b dev origin/dev #举例

tip: 最好保持本地与远程名字一致,方便我们管理

git branch #查看当前所有的分支
git branch -d <分支名> #删除分支
git merge <分支名> #合并分支到当前分支

暂存

把当前工作状态保存下来,去处理其他分支的事,完成回来,接着工作。

要暂存的内容必须add

# 先把工作内容add
git add .

# 暂存
git stash #暂存起来,暂存区名称自动
git stash save "处理bug" #暂存起来,设置暂存区名称
git stash list #查看暂存区列表

git stash apply #恢复被隐藏的文件,但是内容不删除
git stash pop stash@{1} #恢复{1}的文件,删除暂存区
git stash drop #删除文件

git remote #查看远程库名称
git remote –v #查看远程库的地址
git remote show origin #远程库详细信息

git强制覆盖

git fetch --all
git reset --hard origin/master
git pull

git强制覆盖本地命令(单条执行)

git fetch --all && git reset --hard origin/master && git pull

评论