GIt学习笔记
Git 是一个工具,Github(公网的站点) 或 Gitlab(企业内安装搭建)是一个代码托管的仓库,它们之间没有必然的联系。
beyond compare 用于解决版本冲突的软件。
从本地上传代码到版本库:
1 、git remote add 别名(origin) 远程仓库网址 // 给远程仓库取别名 2 、git push -u master // 向远程仓库推送代码 (master可以换成别的分支名称) git push origin dev // 向远程仓库推送 dev 分支代码 |
从版本库下载代码到本地:
1 、git clone 远程仓库网址 2 、git checkout master // 切换分支 (master可以换成别的分支名称) |
1、日常开发:
1 、git checkout dev // 切换到 dev 分支进行开发 2 、git merge master // 把 master 分支的代码合并到 dev 分支 [仅一次] |
2、编写代码 ....
3、提交代码
git add . git commit -m '提交代码说明' git push origin dev // 从本地更新代码到版本库 |
4、拉取代码
git checkout dev // 切换到 dev 分支进行开发 git pull origin dev // 从版本库更新代码到本地 |
5、继续编写代码 ....
版本记录合并:
git rebase -i [版本编号 / head~ 3 ] //注意:合并记录不要合并已提交代码记录 |
将 dev 分支合并到 master 分支
1 、git checkout dev 2 、git rebase master 3 、git checkout master 4 、git merge dev 5 、git log --graph // 图形方式查看版本日志 |
使用 rebase 合并自己代码的方式
git pull origin dev => git fetch origin dev git rebase origin dev |
在需要Git管理的文件夹点击右键,选择Git Bash Here
git init // 初始化 git status // 检测状态 git add 文件名 // 管理指定文件 git add . // 管理所有文件 |
配置用户信息
git config -- global user.email "xx@qq.com" git config -- global user.name "xx" git commit -m '版本描述信息' // 生成版本 git log // 查看版本 git log --graph // 查看版本(以图形方式) git reflog // 查看所有版本(包含回滚版本) git reset --hard 版本号 // 版本回滚 git checkout // 版本回滚到未更改的文件状态 git branch // 版本分支查询 git branch 分支名 // 创建分支版本 git checkout 分支名 // 切换到分支版本 |
主干版本:master
分支版本:dev
合并分支:
1 、git checkout maste // 切换到master主分支 2 、git merge 分支名 // 将分支合并到master主分支 3 、git branch -d 分支名 // 删除合并到master的分支 // 如果合并存在代码冲突,需要打开源代码手动修改,修改完成合并(git add.)并创建新的版本名。 |
Git 的三大区域:
工作区: 已管理文件
新文件/更改文件 提交到暂存区 git add
暂存区: 提交到版本库 git commit
版本库:
SSH实现:
1 、生成公钥和私钥,默认放在~/.ssh 目录下: id_rsa.pub 公钥 id_rsa 私钥 2 、拷贝公钥内容,设置到GitHub中; 3 、在本地Git 中配置SSH地址 git remote add origin git@github.com:xxx/xxx.git 4 、使用SSH git push origin master |
Linux 常用命令
ls 命令,列出目录信息,ls 命令就是 list 的缩写。 ls 用来打印出当前目录的清单。 pwd 命令,显示当前工作目录,pwd 命令是 print working directory 的缩写。 cd 命令,切换工作目录,cd 命令是 change directory 的缩写,切换当前目录至指定的目录。 mkdir 命令,mkdir 命令用来创建指定名称的目录,mkdir 命令是 make directory 的缩写。 rm 命令,rm 命令是 remove 的缩写。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。 mv 命令,mv 命令是 move 的缩写。mv 命令功能是用来移动文件或更改文件名,经常用来备份文件或者目录。 cp 命令,cp 命令用来复制文件或者目录,cp 命令是 copy 的缩写。 nl 命令,nl 命令是 number of lines 的缩写。nl 可以将输出的文件内容自动的加上行号。 touch 命令,创建一个单个文件,执行 touch test.py 创建一个 test.py 文件。 vim 命令,编辑器 visual_interface 的升级版,打开文件或者是新建文件 vim file_name,例如:vim array.sh |
Git 安装配置:https://www.runoob.com/git/git-install-setup.html
GIt学习视频:https://www.bilibili.com/video/BV1tf4y1e7yt
gitlab 配置 ssh key https://blog.csdn.net/breeze_life/article/details/45868045
作者: XuGang 网名:钢钢 |
出处: http://xugang.cnblogs.com |
声明: 本文版权归作者和博客园共有。转载时必须保留此段声明,且在文章页面明显位置给出原文连接地址! |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架