Git使用记录
Git命令
查看分支
查看本地分支
git branch
查看远程分支
git branch -a
切换分支
git checkout branchname
删除分支
先切换到其他分支,比如master,然后删除
git branch -D branchname
查看Git当前版本号
git --version
罗列配置信息
配置信息中包含user.name和user.email,分别对应Github账户的username和email。注意,Github中有username和name,username是那个出现在git clone地址中的。
git config --list
基本流程
在想要进行版本控制的文件夹里
git init
绑定当前文件夹和远端服务器中的仓库
git remote add origin https://github.com//username//repositoryname.git
然后查看当前文件夹中的文件状态
git status
接着添加把所有文件或单个文件
git add .
或
git add 文件名.后缀
再接着添加注释信息,会弹出文本编辑器(比如Notepad++),写好后保存并关闭文本编辑器
git commit
最后push到远端服务器
git push origin master
或
git push origin 分支名
如果要从远端服务器拉项目,则
git pull origin master
或
git pull origin 分支名
不提交当前修改,切换到其他分支
从分支1切换到分支2,先
git stash
然后会得到一个序列号。执行下面语句,查看这个序列号对应是哪个stash,比如是stash@{0}
git stash list
接着切换分支
git checkout 分支2名
在branch2做好修改并push到远程服务器后,切换回branch1,并恢复当时的修改
git checkout 分支1名
git stash apply stash@{0}
版本回溯(版本回滚)
这个应用场景就是从版本A改成了版本B后,想要在版本A的基础上再修改,得到版本C。注意,git clone只能下载最新的版本,但也把历史版本同样下载下来了。
先列出所有commit对应的版本序列号
git log
接着切换到对应序列号的历史版本
git checkout 版本序列号
然后进行修改,然后add,commit,最后push。
git push -f origin 分支名
参考链接:
[1]Git在不提交当前更改的情况下切换到其它分支
复制粘贴
复制ctrl+insert,粘贴shift+insert,或者直接右键copy/paste。
git push 报错 https is not supported
原因是远程仓库的url不干净,比如url前面有空格,需要重新设置。
git remote set-url origin 你的url # 重新设置url
git config --show-origin --get remote.origin.url # 查看url
git push origin -u master
创建.gitignore文件
touch .gitignore
创建成功,在里面写
/dir/ # 忽略该文件夹内所有内容
*.txt # 忽略该文件夹内(包含子文件夹)所有.txt文件
.gitignore文件是中途创建/修改的,让它对之前已经跟踪的文件也起作用
.gitignore文件默认只对创建之后跟踪的文件起作用,如果是中途创建,那就需要删除缓存,这样才能对之前已经跟踪的文件起作用。参考该博文。
git rm -r --cached . #清除所有文件的缓存
git add . # 重新跟踪
如果是中途修改,先把.gitignore文件push到远程仓库,然后再git status一下,这时可以看到它起作用了。
比较当前文件和上一次add的文件的区别
参考该博文,将 已修改但未add 的文件跟 前一次已add的文件进行比较,看看做了哪些修改。git diff会将所有文件的对比情况展示出来,按Enter键会显示一行又一行的比较。最后按q,然后按enter键退出比较。
git diff
远程仓库关联错了,重新关联
git remote set-url origin https://github.com//username//repositoryname.git
查看远程仓库地址
git remote -v
查看上一次commit的文件
git log --pretty=format:"" --name-only -1
查看上一次commit的记录
git log -1
更多操作
本地修改文件名,希望远程文件也随之改名
在本地修改文件名后,比如把FIFO.v改为fifo.v,执行
git mv FIFO.v fifo.v
git add fifo.v
git commit
git push origin xxx
疑问1
本地新建分支A,未push到远程。在分支A中做了修改,没有git add。删除本地分支A后,切换到分支B,但分支A原先的修改还在。把这个修改删除就可以了。疑问是如何在删除分支时把修改一并删除?
Github使用
![](https://img-blog.csdnimg.cn/20210626110441812.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L211eGlfaHVhbmc=,size_16,color_FFFFFF,t_70#pic_center)