GIT 常用command

git init                        新建git库

touch .gitignore 创建不添加文件文档

git add path/filename               添加文件,./为当前文件夹,*.cpp为所有以cpp为后缀名的文件

git add -A         将当前文件夹内,除.gitignore内定义的文件之外,全部添加进git库

git commit path/filename –m “message”               提交,message为自己取得变动名称

git branch branch-name           在当前提交建立分支,branch-name为自己取得分支名

                                                 分支即为新的copy,所有操作必在某一分支下完成

                                                 尝试性的改动,均须新建分支在新分支下进行

git checkout branch-name       由当前分支切换到branch-name分支

git checkout -b branch-name   新建分支并切换到新建分支

git branch -d branch-name     删除分支

git branch -D branch-name     强制删除分支

git merge branch-name  合并分支brach-name

git merge --no-ff -m"xxxx" branch-name 保留原分支合并分支brach-name,合并后新节点名称为xxxx

git config --global user.name "your name"    配置本地电脑用户名 

git config --global user.email "email@example.com"  配置本地电脑用户邮箱

git config --list      查看当前电脑 git 配置信息,比如用户名,邮箱等

git status                  查看库状态(可以查看哪些修改了,但还没提交的)

gitk &                         查看提交历史,该命令可以调出节点查看窗口

gitk --all &                和上一句命令的区别是,可以查看所有分支窗口

git relog  查看各操作节点名称(包括reset --hard之前的名称)

git checkout ./                          将之前的改动删除(切换分支时必须将当前分支的改动提交,如不想提交删除改动可

                                                以用此命令)

git reset version-number         恢复到version-number对应的版本

git reset --hard version-number     恢复到version-number对应的版本,并将前面的版本删除

git stash 保存当前分支变动内容,但不提交,保存后可切换到其它分支

git stash pop 回到保存时的分支后使用该命令,恢复之前变动内容,并且删除保存记录。使用这个命令时,注意,当前head要放在stash的version-number上,如果不在用git reset 将head放在stash上面

git pull 下载远程仓该分支(在本地要先切换到对应分支)

git push -u origin --all 把本地库的内容推送到远程仓并将各对应分支关联起来

git push -u origin branch-name 只把本地库branch-name分支的内容推送到远程仓并将两者关联起来

ls               查看文件路径

Add之后,想撤销add

对于不小心已经使用git add命令提交的文件,有以下方法可以撤回刚才的操作:参考网页

git reset HEAD -filename

其中,-filename可以不要

Commit之后,想撤销commit

git reset --soft HEAD^

仅仅撤销commit操作,写的代码仍然保留,不撤销git add操作的内容。

git reset --mixed HEAD^

不删除工作空间改动代码,撤销commit, 并且撤销git add.操作的内容。

gite reset --mixed HEAD^和git reset HEAD^效果是一样的。

git reset --hard HEAD^

删除工作空间改动代码,撤销commit,撤销git add.操作的内容。

这个操作后,恢复到上一次commit的状态。

HEAD^的意思是上一个版本,也可以写成HEAD~1

如果你进行了2次commit,想都撤回,可以使用HEAD~2

如果commit注释写错了,只是想改一下注释,只需要:

git commit --amend

此时会进入默认vim编辑器,修改注释完毕后保存就好了。

commit撤销参考:git使用情景2:commit之后,想撤销commit_星光的专栏-CSDN博客_git 撤销commit

要删除中间某个 commit 并且保留后面的 commit

step 1: git log 获取 commit 信息

step2: git rebase -i xxxxxx 其中 xxxxxx 要注意是你要删除的 commit 的前一个 commit 的 ID 号

step3: 执行完 step2 后会打开一个文件,将要删除的 commit ID 前的单词由 pick 改成 drop

step4: 保存文件退出即可

参考: Git 删除具体某个提交commit的方法_比博士的博客-CSDN博客_git 删除指定commit

常用辅助操作:

tab键的使用:补全操作,如输入文件名时,只输入前几个字母然后按tab键,则会自动补全该文件的全名。

装好GIT后,一般在要生成管理的项目文件夹中,右键选择git bash即可自动进入当前路径。

在输入命令或语句时,不小心按了回车键,会一直出现>,此时按Ctrl+c即可。

用git reflog后,一直出现no next tag <press return>,此时按q+enter即可退出。

在git bush命令行执行粘贴操作是按鼠标中间滚轮。

Remote 操作

在本地添加 remote (下面三种方法都可以)

git remote add origin your_remote_url          origin 就是远程 repository 的名字,可以改成其它的,一般用origin

                                                                      your_remote_url 就是远程的 URL 地址

git remote set-url origin "https://..."
git config remote.origin.url "https://..."

在本地删除 remote

删除远程仓库:git remote rm origin

删除远程分支:git branch -r -D origin/BranchName (注意:这个命令只是删除本地的远程分支,在 remote 端比如 Gitlab 上,此分支还是存在的,如果要删除 Gitlab 上的这个分支,直接在 Gitlab 该 repo 左侧的 repository 下点击 Branch 然后选择要删除的分支删除。在本地是不能删除 remote 端上的分支的,要直接在 remote 上操作。)

本地删除某个 commit 后同步远程仓库:git push origin HEAD --force 本地删除某个 commit 的详细操作参考上面介绍

从远程获取代码并合并到本地某个分支: git pull <远程主机名> <远程分支名>:<本地分支名>      示例: git pull origin master:local_test      // 将远程(origin)的 master 分支拉下来并和本地的 local_test 分支合并。注意事项:远程主机名后要加空格,远程分支和本地分支直接用 :连接,不要加空格

推送本地某个分支到远程(给远程新建分支): git push <远程主机名> <本地分支名>:<远程分支名>      示例: git push origin local_test:rm_test      // 将本地的 local_test 分支推送到远程(origin)的 rm_test 分支拉,远程如果没有 rm_test 分支会自动新建该分支注意事项:远程主机名后要加空格,远程分支和本地分支直接用 :连接,不要加空格

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值