拓冰建站拓冰建站
首页 / 资讯中心 / 正文

git使用笔记 ---基础篇

git 使用笔记一、下载安装下载地址git二、基础设置2.1、配置用户信息# 设置全局用户名和电子邮件gitconfig--globaluser.name用户名gitconfig--globaluser.email用户名# 某个项目中使用不同的用户名和邮箱gitconfig user.name用户名gitconfig user.email用户名2.2、配置查询#查询设置gitconfig--list2.3、删除#删除用户信息gitcredential-manager uninstall#删除一个文件rmname2.4、公钥操作#设置公钥 #输入邮箱 ssh-keygen -t rsa -C xxxxxx.com #查看密钥 cat ~/.ssh/id_rsa.pub2.5、仓库操作#初始化gitgitinit#连接gitee项目gitremoteaddorigin https:/gitee.com/仓库名/项目名.git#删除远程文件, cached不会把本地的文件删除gitrm-r--cacheddir_name#删除远程仓库gitremotermname#修改仓库名gitremoterenameold_name new_name2.6、文件/文件夹#新建一个文件 如touch index.js在当前目录下新建index.js文件touchname#新建一个目录,就是新建一个文件夹. 如mkdir src 新建src 文件夹mkdirname#删除一个文件夹,先删除文件夹里面的内容再删除文件夹rm-rname#移动文件,例如mv a.html src b.html# a是我们要移动的文件,# src 是目标文件夹,#当然, 这样写,必须保证文件和目标文件夹在同一目录下mvname src name2.7、上传#添加到暂存区里面去如果后面接小数点“.”意为添加文件夹下的所有文件gitadd.#添加到暂存区里面去如果后面接小数点“.”意为添加文件夹下的所有文件gitaddfile1.txt file1.txt#把文件提交到仓库。引号内为提交说明gitcommit-m备注内容#将最新的修改强制推送到远程仓库gitpush-uorigin master-f#将最新的修改推送到远程仓库gitpush origin master#切换到分支:gitcheckout-bbranch_name2.8、下拉#同步项目到本地#主分支拉取gitclone https:/gitee.com/xxx/#指定分支拉取 testing分支名gitclone-btesting https:/gitee.com/xxx.git#同步项目到本地 testing分支名gitpull origin testing#将远程origin主机的master分支拉取过来和本地的当前分支进行合并gitpull origin2.9、分支管理#分支#查看分支gitbranch#查看分支gitbranch-a#添加分支 创建完分支后git branch可以查看当前分支是否已经创建成功gitbranch testing#添加分支gitbranch checkout-btesting#推送分支gitpush origin testing#更新远程分支到本地gitfetch#切换分支gitcheckout testing#删除分支gitbranch-dtesting2.10、版本管理#版本管理#查看日志gitlog#查看日志gitreset--hardcommit#推送到本地到远程仓库让远程仓库代码和本地一样gitpush origin HEAD--force2.11、清屏#把git bash命令窗口中的所有内容清空reset三、基础操作3.1、初步操作3.1.1、配置 Git 用户信息每次 Git 提交代码时Git 会使用用户的姓名和电子邮件来标记这次提交。这是 Git 的基本配置。设置全局用户名和电子邮件gitconfig--globaluser.nameYour Namegitconfig--globaluser.emailyour_emailexample.com如果你只想在某个项目中使用不同的用户名和邮箱可以使用--local修改当前仓库的设置gitconfig user.nameNew Namegitconfig user.emailnew_emailexample.com3.1.2、配置 Git 编辑器如果你在提交时没有提供提交信息Git 会打开默认的文本编辑器来让你输入。你可以选择一个你熟悉的编辑器设置 Vim 为默认编辑器默认编辑器gitconfig--globalcore.editorvim设置其他编辑器如 VS Codegitconfig--globalcore.editorcode --wait3.1.3、查看 Git 配置你可以使用以下命令查看当前的 Git 配置信息gitconfig--list3.2、下载仓库或文件Git 提供了多种方法来下载仓库或文件最常见的是克隆仓库和拉取最新代码。3.2.1、克隆仓库如果你想下载一个 Git 仓库可以使用git clone命令。克隆远程仓库gitclone https://github.com/username/repository.git或者使用 SSH如果已配置 SSH 密钥gitclone gitgithub.com:username/repository.git克隆指定分支 如果仓库有多个分支你可以通过-b参数指定要克隆的分支gitclone-bbranch_name https://github.com/username/repository.git3.2.2、拉取更新如果你已经克隆了仓库并且希望将远程仓库的最新更改拉取到本地可以使用git pull命令拉取并合并远程主分支默认是origin/mastergitpull origin master拉取其他分支的更改gitpull origin branch_name3.3、新建仓库上传3.3.1、创建新的 Git 仓库创建一个新目录并进入该目录mkdirnew_repositorycdnew_repository初始化 Git 仓库gitinit这将在当前目录中创建一个.git文件夹表示该目录是一个 Git 仓库。3.3.2、添加文件并提交将文件添加到 Git 仓库echoHello, World!file.txt将文件添加到 Git 暂存区gitaddfile.txt提交文件到仓库gitcommit-mAdd file.txt3.3.3、将本地仓库推送到远程创建一个远程仓库如 GitHub 或 GitLab。将远程仓库添加为本地仓库的远程源gitremoteaddorigin https://github.com/username/new_repository.git将本地仓库推送到远程仓库# 上传的是 master 分支gitpush-uorigin master# 上传指定分支gitcheckout-bdevgitpush-uorigin dev如果是第一次推送可以使用-u设置上游分支。3.4、已有仓库上传文件3.4.1、仓库同步后上传本地和服务器端都已经有仓库并且需要同步文件操作如下3.4.1.1、检查远程仓库首先确保你的本地仓库与远程仓库连接正常。可以使用git remote -v命令查看当前远程仓库配置gitremote-v如果远程仓库没有配置可以使用git remote add命令将远程仓库添加到本地仓库gitremoteaddorigin https://github.com/username/my_project.git3.4.1.2、拉取远程仓库的更改在进行上传之前首先拉取远程仓库的最新更改避免代码冲突gitpull origin master如果远程仓库有多个分支拉取特定的分支gitpull origin dev3.4.1.3、上传本地更改在本地仓库进行修改后提交并推送更改到远程仓库添加修改文件gitadd.提交修改gitcommit-mUpdate files推送更改到远程仓库gitpush origin master如果你在本地使用的是其他分支如dev推送时指定相应的分支gitpush origin dev3.4.1.4、同步完成此时远程仓库和本地仓库的文件已同步。3.4.1.2、完整下拉后上传远程仓库已经在服务器上创建本地没有该仓库你需要编辑文件并将更改同步到服务器。3.4.1.2.1、克隆远程仓库到本地首先你需要将远程仓库克隆到本地gitclone https://github.com/username/my_project.git或者使用 SSH 协议如果你已经配置了 SSH 密钥gitclone gitgithub.com:username/my_project.git3.4.1.2.2、编辑文件进入克隆下来的本地仓库并进行文件修改cdmy_project例如修改一个文件echoNew contentfile.txt或者编辑文件vimfile.txt3.4.1.2.3、提交修改在本地进行更改后使用以下命令将修改提交到本地仓库添加文件到暂存区gitaddfile.txt提交更改gitcommit-mUpdate file.txt3.4.1.2.4、推送更改到远程仓库提交本地更改后将这些更改推送到远程仓库git push origin master如果你在其他分支上工作推送时指定相应分支gitpush origin dev3.4.1.2.5、同步完成现在远程仓库上的文件已经更新并且与本地更改同步。3.5、版本以及分支管理3.5.1、查看版本历史查看提交日志gitlog可以加上--oneline参数以简洁的方式查看gitlog--oneline查看某个文件的历史记录gitlog file.txt3.5.2、创建分支创建一个新分支gitbranch new_branch_name切换到新创建的分支gitcheckout new_branch_name或者使用以下命令创建并切换到新分支gitcheckout-bnew_branch_name3.5.3、合并分支切换到你想合并到的分支例如mastergitcheckout master合并其他分支例如new_branch_name到当前分支gitmerge new_branch_name如果有冲突Git 会提示你手动解决冲突。3.5.4、删除分支删除本地分支gitbranch-dbranch_name删除远程分支gitpush origin--deletebranch_name3.5.5、查看当前分支查看当前所在分支gitbranch查看所有分支包括远程分支gitbranch-a3.5.6、切换分支切换到其他分支gitcheckout branch_name四、快捷方式4.1、cmd脚本新建.cmd文件输入以下内容注意CMD命令提示符默认使用的是**GBK/GB2312**编码格式如果编码格式错误中文会显示乱码。gitpull origin mastergitadd.gitcommit-mSynchronize from the local server to the cloud servergitpush origin master附件1常见问题1、换行符 LF 警告解释LF(Line Feed)Linux 和 macOS 使用的换行符。CRLF(Carriage Return Line Feed)Windows 使用的换行符。Git 默认会根据操作系统自动调整换行符以保持一致性避免不同操作系统下的换行符差异导致问题。这个警告告诉你Git 将在提交时自动将文件中的换行符从LF转换为CRLF以适应你当前的操作系统Windows。解决方法忽略换行符转换警告如果你不关心换行符的转换并且希望 Git 按照默认方式自动转换可以忽略这些警告。Git 会在提交时进行换行符转换不会影响代码的功能。配置 Git 保持一致的换行符设置你可以配置 Git 以强制保持一致的换行符风格。例如你可以指定 Git 使用LFLinux/macOS 样式的换行符这样无论在哪个操作系统上操作提交到仓库的文件都将始终使用LF。在 Git 中设置core.autocrlf选项在 Windows 上强制转换为 CRLF默认设置gitconfig--globalcore.autocrlftrue在 Windows 上保留 LF 换行符 如果你希望 Git 始终使用 LF即使在 Windows 上也不转换为 CRLF可以设置为inputgitconfig--globalcore.autocrlf input禁止换行符转换 如果你不希望 Git 做任何换行符的自动转换可以设置为falsegitconfig--globalcore.autocrlffalse手动修复换行符问题如果你希望在提交之前修复文件中的换行符问题可以使用以下命令将所有文件的换行符转换为LF适用于 Linux/macOSfind.-typef-execdos2unix{}\;在 Windows 上你可以使用unix2dos或dos2unix工具来修复换行符。2、仓库的所有者与当前用户不匹配仓库所在的目录///my_project/electronic_lighter由一个不同的用户S-1-5-21-2988692519-1305695472-2085298601-3002所有而当前操作的用户是MO/aaS-1-5-21-859680190-3714723100-4203350317-1001。Git 在某些情况下如 NFS 挂载的网络驱动器或跨不同操作系统的文件共享会对目录的所有权进行严格检查以确保文件系统的安全性。如果它发现仓库目录的所有者不匹配Git 会认为这是一个潜在的安全风险。解决方法你可以通过添加一个safe.directory配置来告诉 Git 该目录是安全的并允许操作。添加安全目录配根据提示信息你可以使用以下命令将该目录添加为安全目录gitconfig--global--addsafe.directory%(prefix)///my_project/electronic_lighter这条命令会将指定目录标记为安全目录并允许 Git 在该目录下进行操作。验证配置是否成功你可以通过以下命令检查配置是否正确添加gitconfig--global--get-all safe.directory这将列出所有被 Git 标记为安全的目录。重新尝试git add .完成配置后重新运行你的git add .命令gitadd.
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门