一般使用git bash需要的命令
先打开git bash:
git init 可以初始化一个本地的仓库 git status 查看仓库信息 mkdir test 创建一个test的文件夹 cd test 进入到test的文件目录 touch 1.cpp 创建一个1.cpp的文件 git add 1.cpp 我们将文件提交到本地暂存区 git commit -m '第一次创建新文件' 将文件提交到仓库
vi 1.cpp 打开1.cpp文件进行编译 按i可以切换到编辑模式,在编辑模式下输入文字,输入完毕后,按ESC切换到命令模式, 在命令模式下按“ : ” 可以接受相关命令。这里我们只需要输入wq来保存文件。在按照上面的步骤git add和git commit -m重复操作。 rm -rf 1.cpp删除本地文件 git rm 1.cpp 删除暂存区内的1.cpp文件 git commit -m '删除新文件' 将仓库中的文件删除
//远程提交文件 先找到要提交的git仓库地址,比如 https://github.com/Strive-Sun/Test.git git clone https://github.com/Strive-Sun/Test.git 将仓库克隆到本地 cd Test 进入本地仓库文件夹 touch 2.cpp 创建一个新的文件 git add 2.cpp 将新的文件提交到暂存区 git commit -m '第二次提交' 将文件提交到本地仓库 git push 将文件远程提交到github的项目目录上
注意:如果是别人的项目,你可以先fork到你的github上,再clone该项目,增添一些新功能后,再远程提交给github上
github上会提醒你添加了新的文件,你可以点击pull request来提交该修改的文件,来让作者合并该内容。
使用远程git命令时,可以使用git config --list 来查看user.name和user.email,如果没有,则需要进行配置
git config --global user.name 'Strive-Sun' git config --global user.email '1096235292@qq.com'
在使用git push时,可能在浏览器上会提醒需要连接到浏览器的github账号,这是因为我们并没有本地配置github的账号和密码,
这一步代表我们可以用浏览器上缓存的账号密码进行配置。
如果在使用git push时遇到' The requested URL returned error: 403 Forbidden while accessing' 错误
解决方法:私有项目,没有权限,输入用户名密码,或者远程地址采用这种类型
vi .git/config #将 [remote "origin"] url = https://github.com/用户名/仓库名.git 修改为: [remote "origin"] url = https://用户名:密码@github.com/用户名/仓库名.git
一些其他命令:
git log 查看详细的历史记录 git log --pretty=oneline 以漂亮的方式列出历史记录 git log --oneline git reflog 多了一个log版本前进和后退的指针
上图可以看出版本回退到jjjjjj edit这行,用cat命令打开也可以发现最新的一行就是jjjjjj
找回删除的文件的操作
添加到缓存区的文件找回
git diff [文件名] 将工作区中的文件和暂存区进行比较
git diff [本地库中历史版本] [文件名] 将工作区中的文件和本地库历史记录比较
不带文件名 可以比较多个文件
上图为分支的操作
上面两个图是合并分支的操作,注意: 在命令模式下输入set nu 可以在文本前面显示行数
设置远程库别名
git fetch origin master 是将远程的文件抓取到本地,并不会修改本地的文件
使用cat 1.txt 会发现本地工作区的文件没有被修改
使用git checkout origin/master 切换到远程仓库的分支(git checkout master 切换到本地的master ) 再使用cat 1.txt查看文件后,确认是所需要的文件
然后我们就可以对本地的文件进行合并操作,使用git merge origin/master
pull = fetch + merge
git fetch [远程库地址别名][远程分支名]
git merge [远程库地址别名/远程分支名]
git rebase -i 可以合并或者删除某些 commit ,见:git删除中间某个commit
git remote add origin git@github.com:xxx.git 添加远程分支
git pull origin master 远程分支拉到本地 maste 分支
git push upstream 本地分支推送到远程 upstream 分支上
git push origin localbranch:localbranch 把新建的本地分支push到远程服务器,远程分支与本地分支同名
git push origin --delete localbranch 删除指定的远程分支
git pull origin <远程分支名>:<本地分支名> 将远程指定分支拉取到本地指定分支上
git push origin <本地分支名>:<远程分支名> 将本地当前分支推送到远程指定分支上
tag常用git命令:
git tag #列出所有tag
git tag -l v1.* #列出符合条件的tag(筛选作用)
git tag [tag名] #创建轻量tag(无-m标注信息)
git tag -a [tag名] #创建含注解的tag
git tag -l | xargs git tag -d #删除所有本地分支
git fetch origin --prune #从远程拉取所有信息
git branch -a --contains Tag_V1.0.0 # 看看哪个分支包含这个tag/commit
git push origin --tags #推送所有本地tag到远程
git push origin [本地tag名] #推送指定本地tag到远程
git tag -d [本地tag名] #删除本地指定tag
git push origin :refs/tags/[远程tag名] #删除远程指定tag
git fetch origin [远程tag名] #拉取远程指定tag
git show [tag名] #显示指定tag详细信息
#查询远程tags的命令如下:
git ls-remote --tags origin
git rm --cached 子模块名称 #移除子模块
出现 "Please enter a commit message for your changes" 时要更换文本编辑器
使用:git config --global core.editor "code --wait"
原文链接: https://www.cnblogs.com/strive-sun/p/14673619.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/404620
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!