windows上使用git命令行

windows上使用git命令行

记录一下windows上git命令行,方便以后查看!

安装

在git官网上下载安装程序,然后默认选项安装即可。
安装成功后,可以在桌面右面看到Git Bash Here。点击后跳出类似命令行窗口的东西,表示安装成功!

安装完成后,还需要最后一步设置,在命令行输入:

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

注意:工作区,暂存区,本地仓库,远程仓库

创建版本库

git init

添加文件到Git仓库

添加file到暂存区(可反复多次使用,添加多个文件)

git add <file>

git add -A提交所有变化;

git add .提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件

git add -u提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)

文件提交到本地仓库(-m后面输入的是本次提交的说明,可以输入任意内容)

git commit -m "message"

每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id
commit-id在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与git reset的组合命令回到这里

查看本地信息

查看本地仓库与工作区,暂存区的区别(随时掌握工作区的状态)

git status

查看工作区(work dict)和暂存区(stage)的file文件改变内容

git diff <file>

查看暂存区(stage)和本地仓库的区别

git diff –cached 

查看工作区和本地仓库里面最新版本的区别(HEAD表示当前版本)

git diff HEAD -- readme.txt 

远程仓库

先有本地库,后有远程库的时候,如何关联远程库。

关联远程库

 git remote add origin git@github.com:doc/abc.git

推送内容到远程库(第一次推送master分支时,加上了-u参数,关联本地的master分支和远程的master分支)

git push -u origin master
先创建远程库,然后,从远程库克隆

克隆一个仓库

git clone git@github.com:doc/abc.git
在本地创建和远程分支对应的分支
git checkout -b dev origin/dev
查看信息

查看远程库的信息

git remote

显示更详细的信息

git remote -v
拉取分支内容

从远程获取最新版本并merge到本地

 git pull

如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建

git branch --set-upstream-to <branch-name> origin/<branch-name>

从远程获取最新到本地,不会自动merge

git fetch
推送分支(推送时,要指定本地分支)
git push origin master

master分支是主分支,因此要时刻与远程同步

dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步;

bug分支只用于在本地修复bug,就没必要推到远程了,除非老板要看看你每周到底修复了几个bug;

feature分支是否推到远程,取决于你是否和你的小伙伴合作在上面开发。

分支管理

HEAD指向的就是当前分支

创建dev分支,然后切换到dev分支

git checkout -b dev

命令加上-b参数表示创建并切换,相当于以下两条命令

git branch dev
git checkout dev

查看当前分支(列出所有分支,当前分支前面会标一个*号)

git branch

把dev分支的工作成果合并到master分支上(合并指定分支dev到当前分支)

git merge dev

强制禁用Fast forward模式(因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去。)

git merge --no-ff -m "merge with no-ff" dev

删除dev分支

git branch -d dev

强行删除

 git branch -D dev
Bug分支

把当前工作现场“储藏”起来,等以后恢复现场后继续工作

git stash

查看工作现场

git stash list

恢复工作现场(stash内容并不删除)

git stash apply

需要删除时

git stash drop

或则,恢复的同时删除stash内容

git stash pop

开发新功能时,最好新建一个feature分支,在上面开发,完成后,合并,最后,删除该feature分支。

解决冲突

Git用<<<<<<<=======>>>>>>>标记出不同分支的内容

查看分支的合并情况

git log

输出信息简化信息(一大串类似1094adb…的是commit id)

git log --pretty=oneline

版本切换

Git必须知道当前版本是哪个版本,在Git中,用 HEAD 表示当前版本,上一个版本就是 HEAD^ ,上上一个版本就是 HEAD^^ ,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

退回到上上一个版本

git reset --hard HEAD^

or(可以找回前面已经退回的版本,只要知道commit id)

git reset --hard 1094a

记录每一次命令(这样就可以找回不记得commit id的版本)

git reflog 

撤销

丢弃工作区的修改
git checkout -- readme.txt

命令git checkout – readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commitgit add时的状态。、

暂存区的修改撤销掉(unstage),重新放回工作区
git reset HEAD readme.txt
想要撤销commit 后的修改

参考版本切换

删除

rebase操作

rebase操作可以把本地未push的分叉提交历史整理成直线

git rebase

标签管理

标签也是版本库的一个快照。(其实它就是指向某个commit的指针;但是分支可以移动,标签不能移动)

打一个新标签

git tag <tagname>

查看所有标签

git tag

针对某次commit打标签,f52c633为commit id

git tag <tagname> f52c633

创建带有说明的标签,用-a指定标签名,-m指定说明文字

git tag -a <tagname> -m "version 0.1 released" 1094adb

查看标签信息

git show <tagname>

删除标签

git tag -d <tagname>

推送某个标签到远程

git push origin <tagname>

或者,一次性推送全部尚未推送到远程的本地标签

git push origin --tags
删除远程标签

先从本地删除

 git tag -d <tagname>

然后,远程删除(删除命令也是push)

git push origin :refs/tags/<tagname>
  • 5
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在VScode中使用git命令行可以通过以下步骤进行配置。首先,你需要在终端中执行以下命令来设置VScode作为默认的git编辑器:\[1\] ``` git config --global core.editor "code --wait" ``` 接下来,你需要下载并安装Git命令行工具,可以从官网进行下载安装。安装完成后,你就可以在VScode中使用git命令行了。例如,如果你想将代码提交到git仓库,你可以在VScode的终端中执行以下命令:\[2\] ``` git add . git commit -m "提交信息" git push ``` 其中,`git add .`命令用于将所有修改过的文件添加到暂存区,`git commit -m "提交信息"`命令用于提交代码并添加提交信息,`git push`命令用于将代码推送到远程仓库。 希望以上信息对你有所帮助! #### 引用[.reference_title] - *1* *3* [git命令行操作和Vscode的git操作](https://blog.csdn.net/wzsrlndm/article/details/121136394)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Windows VScode如何配置与使用git?](https://blog.csdn.net/Code_King006/article/details/131646073)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值