Git之实用操作指令、ssh与https地址之间的切换、本地仓库提交到远程仓库、合并或更新代码的步骤、设置免密码访问服务器、强制合并、基础知识、命令行

📅 发布时间:2026/7/8 13:58:17 👁️ 浏览次数:
Git之实用操作指令、ssh与https地址之间的切换、本地仓库提交到远程仓库、合并或更新代码的步骤、设置免密码访问服务器、强制合并、基础知识、命令行
MENU常用指令本地重置远程仓库信息合并或更新代码的步骤本地仓库提交到远程仓库、强制合并分支、remote、checkout、reset、origin、initssh与https地址之间的切换、设置免密码访问服务器什么是版本控制为什么要使用版本控制集中化版本控制系统SVN分布式版本控制系统Git基础的Linux命令清除屏幕往控制台输出信息相当于JavaScript中的打印创建文件将当前目录下的子文件子目录平铺在控制台将对应目录下的子孙文件子孙目录平铺在控制台将对应目录下的文件平铺在控制台删除文件重命名查看对应文件的内容打开编辑器Git目录解释常用指令注释指令注释指令克隆仓库git clone 地址克隆分支git clone -b [branch_name] 地址–--克隆指定分支节省体积git clone -b branch-name --single-branch repository-url正常删除git branch -d [branch_name]强制删除git branch -D [branch_name]删除远程分支git push origin --delete [branch_name]拉取本分支git pull拉取指定分支git pull origin [branch_name]拉取并创建分支1git remote update origin --prune推送到远程分支上2git push将分支推送到远程仓库3git push -u origin [branch_name]查看分支状态git status查看本地所有分支git branch合并本地分支4git merge [branch_name]创建本地分支git branch [branch_name]创建并切换分支git checkout -b [branch_name]切换本地分支git checkout [branch_name]提交到暂存区git add .提交到本地仓库git commit -m 说明内容查看版本git --version配置邮箱git config --global user.email xxx.com配置用户名git config --global user.name xx查看配置信息git config --list删除配置信息5git config --global --unset user.email初始化本地仓库git init查看本分支的历史记录6git log所有记录在同一行显示6git log --oneline查看所有历史记录git log --oneline --decorate --graph --all配置git config --global alias.mjAllLog log --oneline --decorate --graph --all查看所有分支的最后一次提交git branch -v组合指令7git commit -a -m 提交说明存储git stash查看存储git stash list不携带参数启用存储8git stash apply携带参数启用存储9git stash apply [stash{2}]简单删除存储git stash drop [stash{2}]启用并删除存储git stash pop [stash{2}]撤回工作区git checkout -- filename查看暂存区git ls-files -s查看暂存区对应文件的内容10git cat-file -p [对象名]撤回暂存版本git reset HEAD FILE撤回暂存文件git reset HEAD test.txt撤回提交11git commit --amend查看整个项目的所有历史操作git reflog强制覆盖远程分支12git push origin [branchName] -f拉取远程所有的最新分支并且自动创建本地分支13git remote update origin --prune退出Git的vim编辑器14. . .克隆分支git remote add origin 地址克隆分支git clone -b [branch_name] 地址在项目中配置单独的Git信息git config user.name name/git config user.email email最新一次提交和上一次提交的比较git diff HEAD^ HEAD在当前分支时重命名分支名git branch -m [newName]不在当前分支时重命名分支名git branch -m [oldName] [newName]本地重置远程仓库信息1、查看远程仓库信息git remote -v2、查看远程仓库详细信息git remote show origin3、查看远程分支列表git ls-remote4、查看远程分支列表git ls-remote --heads origin5、查看当前分支跟踪的远程分支git branch -v6、删除现有的远程仓库git remote remove origin7、绑定添加远程仓库git remote add origin https://gitee.com/your_username/your_repo.git8、编辑/修改/更换远程仓库git remote set-url origin https://gitee.com/new_username/new_repo.git9、首次推送本地分支到远程仓库git push -u origin you_branch10、强行推送本地分支到远程分支git push --force origin you_branch合并或更新代码的步骤假设目前有两个分支分别是dev与mj01假设现在处于mj01分支上第一步在本地mj01分支上推送代码到远程mj01分支中第二步在本地mj01分支上切换到本地dev分支上第三步在本地dev分支上拉取远程dev分支第四步如果本地dev分支与拉取的远程dev分支的代码有冲突则解决冲突第五步在本地dev分支上推送代码到远程dev分支中第六步在本地dev分支上拉取远程mj01分支第七步如果本地的dev分支与拉取的远程mj01分支的代码有冲突则解决冲突第八步在本地dev分支上推送代码到远程dev分支中第九步在本地dev分支上切换到本地mj01分支上第十步在本地mj01上拉取远程dev分支本地仓库提交到远程仓库、强制合并分支、remote、checkout、reset、origin、init本地初始化Gitgit init在git init之后最好往仓库加点内容。加好内容后git add .git commit -m 第一次推送至远程仓库。创建远程仓库一定要创建空仓库就是仓库里面什么都没有也不要初始化。链接远程仓库git remote add origin https://gitee.com/mj/test-null.git把本地仓库提交到远程仓库中git push-u origin master这一步可能会不成功原因是远程仓库不为空。解决方法一git push origin develop:master-f将develop分支强制推送合并至master分支。解决方法二切换分支至master分支。git checkout master并将master分支重置为develop。git reset--hard develop将重置后的master分支强制推送更新。git push origin master--force相当于删除master分支test将其覆盖并推送远程仓库。ssh与https地址之间的切换、设置免密码访问服务器1、查看当前属于什么地址的命令git remote-v如果当前处于ssh状态下会输出一下内容。origin gitgitee.com:mssj200224/open-resources.git(fetch)origin gitgitee.com:mssj200224/open-resources.git(push)如果当前处于https状态下会输出一下内容。origin https://gitgitee.com:mssj200224/open-resources.git(fetch)origin https://gitgitee.com:mssj200224/open-resources.git(push)2、从ssh切换至httpsgit remote set-url origin https://gitgitee.com:mssj200224/open-resources.gitorigin后面是远程仓库的https地址。3、从https切换至sshgit remote set-url origin gitgitee.com:mssj200224/open-resources.gitorigin后面是远程仓库ssh地址。4、设置密码默认15分钟git config--global credential.helper cache自己定义时间一小时后失效git config credential.helpercache --timeout3600永久存储密码git config--global credential.helper store什么是版本控制版本控制是一种记录一个或若干文件内容变化以便将来查阅特定版本修订情况的系统。为什么要使用版本控制●版本控制可以将某个文件回溯到之前的状态甚至将整个项目都回退到过去某个时间点的状态。就算乱来一气把整个项目中的文件改的改删的删照样可以轻松恢复到原先的样子。但额外增加的工作量却微乎其微。●可以比较文件的变化细节查出最后是谁修改了哪个地方从而找出导致怪异问题出现的原因又是谁在何时报告了某个功能缺陷等。集中化版本控制系统SVNsvn因为每次存的都是差异需要的硬盘空间会相对的小一点可是回滚的速度会很慢。优点代码存放在单一的服务器上便于项目的管理。缺点服务器宕机 : 员工写的代码得不到保障。服务器炸了 : 整个项目的历史记录都会丢失。分布式版本控制系统Gitgit每次存的都是项目的完整快照需要的硬盘空间会相对大一点。Git团队对代码做了极致的压缩最终需要的实际空间比svn多不了太多可是Git的回滚速度极快。优点完全的分布式。缺点学习起来比SVN陡峭。基础的Linux命令清除屏幕clear往控制台输出信息相当于JavaScript中的打印echotestText创建文件echotestTexttest.txttouch test.txtvim test.txt将当前目录下的子文件子目录平铺在控制台ll将对应目录下的子孙文件子孙目录平铺在控制台find./将对应目录下的文件平铺在控制台find./-type ffind test-type f删除文件rm test.txt重命名mv file.txt test.txt查看对应文件的内容cat test.txt打开编辑器vim test.txt操作步骤●按i进插入模式可对文件编辑●按esc键进入命令行模式●在命令行中首先按:●:后面跟着对应的命令命令q!: 强制退出且不保存wq: 保存退出set nu: 设置行号Git目录解释hooks: 目录包含客户端或服务端的钩子脚本info: 包含一个全局性排除文件logs: 保存日志信息objects: 目录存储所有数据内容refs: 目录存储指向数据的提交对象的指针分支config: 文件包含项目特有的配置选项description: 用来显示对仓库的描述信息HEAD: 文件指示目前被检出的分支index: 文件保存暂存区信息拉取远程指定分支并且在本地自动创建分支。↩︎将本地的分支推送到远程分支上确保远程仓库由此分支。↩︎此操作会将本地分支推送到远程仓库中并且会自动在远程仓库创建此分支。此命令在一个分支上只能执行一次多次操作会报错。执行此命令的前提是远程仓库没有此分支一开始此分支只存在本地仓库。↩︎当本地有多个分支时在自己分支上把其它本地分支合并到自己的分支上。↩︎博客园-原文↩︎在提交了若干更新又或者克隆了某个项目之后可以回顾提交历史。默认不用任何参数的话git log会按提交时间列出所有的更新最近的更新排在最上面。↩︎ ↩︎合并git add .和git commit -m指令此命令在使用之前一定要有git add .过一次才行。↩︎默认会启用最近(最新)的存储。↩︎这各参数可以通过git stash list来获取是个列表。↩︎这里的对象名就是git ls-files -s查询出来的值。↩︎功能是重新写注释都是重新提交一次只不过错误的注释不再出现。此命令会进入注释编辑窗口进入窗口后按i进入编辑状态改完注释后按esc后进输入命令窗口接着输入wq保存退也可以q!不保存强制退出。↩︎使用场景回退后重新push会报错意思是当前版本低于远程版本无法提交。此时可以使用此命令解决。↩︎此操作会创建本地分支分支能正常切换但是执行git branch没有发现有远程分支显示。↩︎☺方式一第一步按Esc退回插入模式第二步:q退出编辑器:q!强制退出且不保存:wq保存后并退出:wq!强制保存且后退出☺☺方式二按住Esc键不放再按两次大写的Z。↩︎