美文网首页
git常用指令,干货整理

git常用指令,干货整理

作者: superSK | 来源:发表于2024-05-09 19:40 被阅读0次
    git init:创建一个新的 Git 仓库
    cd /path/to/project/codebase
    git init 
    
    git clone:克隆一个 Git 仓库
    //git clone命令使您可以访问其他用户存储库代码库,这使得下载和个性化大量可公开访问的用户存储库变得容易。
    //如果您对GitHub等平台上托管的公共存储库感兴趣,您可以通过指定存储库的有效 Git URL 来检索它:
    git clone [URL]
    
    //在 GitHub 上,它将是这样的:
    git clone https://github.com/username/repository_name.git
    
    //您还可以指定用于下载目标存储库的目录:
    //下面命令将gitcommandtutorials存储库下载到test-dir目录中
    git clone https://github.com/jumagemini/gitcommandtutorials.git test-dir
    
    //另一方面,您可能对克隆特定的存储库分支感兴趣:
    git clone --branch <branch_name> [URL]
    //或者 
    git clone -b <branch_name> [URL]
    
    //例子:
    git clone -b developer https://github.com/jumagemini/gitcommandtutorials.git
    
    git add:添加文件内容到暂存区
    //git add命令可用于收集暂存文件。暂存区(也称为index)提供收集文件的临时存储,
    //同时在进行任何存储库提交之前跟踪与当前/活动存储库关联的文件更改。文件需要已经存在。
    
    //添加单个文件
    //要为暂存添加单个文件,请执行:
    git add [file_name]
    
    //添加多个文件
    //要为暂存添加多个文件,请执行:
    git add file1 file2 file3
    
    //添加所有文件
    //要添加用于暂存的所有文件(新文件和修改后的文件),请执行:
    git add -A
    
    //添加删除和修改的文件
    //要仅添加已删除和已修改的文件以进行暂存,请实施:
    git add -u
    
    //在当前目录中添加文件
    //要在当前目录中添加所有创建和修改的文件以进行暂存,请执行:
    git add . 
    
    //添加具有特定文件扩展名的文件
    //要添加与特定文件扩展名关联的所有文件,例如 Python 文件,请执行:
    git add *.py
    
    git rm -f:从 Git 存储库中删除文件
    //git rm命令可用于从 git 存储库中删除不需要的项目文件。该-f标志强制删除带有阻止正常删除限制的文件。
    //它还会暂存已删除的文件以供提交,以便托管存储库知道已删除的项目文件。
    
    //删除单个文件
    //要删除单个文件,请执行:
    git rm -f file4.txt
    
    
    //删除多个文件
    //要删除多个文件,请执行:
    git rm file1.txt file2.php file3.py file4
    
    //删除目录
    //我们还可以使用-r标志递归地删除项目目录及其内容:
    git rm -f -r directory_name
    
    git mv:移动或重命名 Git 存储库文件
    //git mv命令移动并重命名 Git 存储库文件。来自这些移动和重命名操作的更改也被暂存以提交到存储库。
    
    //重命名项目文件
    //要重命名项目文件,请执行以下命令:
    git mv old-name.txt new-name.txt
    
    //移动项目文件
    //要将项目文件移动到不同的目录,请执行:
    git mv file3.txt beta/file3.txt
    //等价于三个子操作:
    mv file3.txt beta/file3.txt
    git add beta/file3.txt
    rm file3.txt
    
    git commit:将更改保存到 Git 存储库
    //提交对于版本控制很重要,因为代码库的快照副本由 git 存档。git commit命令永久存储(在存储库中)来自 git add 命令的暂存更改。
    
    //添加新提交
    //要添加新提交,请实施:
    git commit -m "commit message"
    
    //修复先前的提交
    //要修复最新一次的提交(覆盖记录):
    git commit --amend -m "commit message"
    
    //提交修改后的文件
    //要提交所有修改过的文件(在暂存之后),请使用-a如下所示的标志:
    git commit -a -m "Commit message"
    
    git branch:列出、创建或删除分支
    //git branch命令在列出、创建和删除 Git 存储库项目分支时很有用。
    //当前或主要分支标有星(*)号。
    
    //列出存储库分支
    //要列出所有存储库项目分支,请运行:
    git branch
    
    //创建一个新分支
    //要创建一个新分支,请运行
    git branch [new-branch-name]
    
    //删除现有分支
    //要删除现有分支,请执行:
    git branch -d [branch-name]
    //如果该分支有尚未合并的更改,确信要删除它,可以使用强制删除选项
    git branch -D [branch-name]
    // 删除远程分支
    git push origin --delete <branchName>   
    
    //为避免错误,请确保在删除分支之前已离开该分支。
    //例如,如果您仍在一个名为newest的分支上并需要删除它,请先离开该分支并移动到另一个现有分支或主分支上,然后再删除它。
    //切换到另一个分支(例如 main):
    git checkout main
    
    //现在删除最新的分支:
    git branch -d newest
    
    //==================================
    //==================================
    //查看本地分支和远程分支的对应关系
    git branch -vv
    //查看所有分支,本地和远程
    git branch -a
    //设置本地与远程分支对应关系
    git branch --set-upstream-to origin/分支名
    //创建分支
    git checkout -b dev             // 基于本地创建分支
    git checkout -b dev origin/dev  // 基于远程分支创建本地分支
    //参数 -b 命令相当于
    git branch dev      // 创建分支
    git checkout dev    // 切换分支
    
    //重命名分支
    git branch -m new-name
    git branch -m old-name new-name
    
    git status:显示存储库和暂存区的状态
    //git status命令验证在下一次提交中排队等待暂存的文件是否存在。它突出显示所有添加、修改和/或删除的文件及其绝对路径。
    //此命令对Git工作流程(第一步)至关重要,因为它显示存储库文件的当前状态(已修改和未跟踪)。
    git status
    
    git log:显示提交历史
    //git log命令显示 git 存储库的历史记录。它为 git 用户提供了已实施的存储库更改的预览。此类更改包括提交更改、作者和日期。
    
    //显示提交历史
    //对于当前活动分支的提交历史:
    git log
    
    //过滤 Git 日志
    //对于 branch_22 上不存在的branch_11的提交历史。
    git log branch_22..branch_11
    
    //注意双点语法的使用(..) -排除的意思。
    //按作者过滤日志信息:
    git log --author=author_name
    
    //以一行的形式查看
    git log --oneline
    
    //以树状形式显示
    git log --all --graph --decorate --oneline
    
    git checkout:在分支之间切换
    //大多数软件开发项目都涉及团队合作。在这种情况下,创建了几个特性和开发分支。当你想在分支之间成功切换时, git checkout命令很有用。
    
    //切换到现有分支
    //要切换到另一个现有分支并从当前目录预览它,请执行:
     git checkout [分支名称]
    
    //要创建并切换到新分支,请执行:
    git checkout -b new-branch 
    
    git pull:下载并合并 Git 仓库
    //查看本地分支和远程分支对应关系
    git branch -vv
    
    //拉取代码解决冲突方式:
    #一:将远程的代码先拉取到本地的临时分支 tmp,然后手动的进行合并merge。掌控代码
    git branch -b tmp origin/tmp // 基于远程的分支新建本地分支
    git pull origin dev-person:tmp
    git checkout tmp
    git diff tmp
    git merge tmp
    //如果有冲突,合并冲突后,再git add ,git commit
    
    #二:使用pull直接与本地代码merge
    //假设你的远程仓库名字是origin,要拉取的远程分支是develop,要合并到的本地分支是master,那么命令如下:
    //将指定远程分支拉取到指定的本地分支合并(注意:pull是远程在前本地在后,push相反)
    //<远程分支名>:<本地分支名>
    git pull origin develop:master
    
    //拉取指定分支合并到当前分支
    git pull origin 分支名
    
    #三(推荐):本地建一个开发目录和仓库目录
    #思路:开发目录是与git隔离,仓库目录用来拉去最新的代码,每次提交和更新本地开发代码,通过代码对比工具,将代码对比到仓库目录,然后提交。
    
    git fetch:从远程获取代码库
    //git fetch之后再实用git merge 进行合并操作
    git fetch <远程主机名>     //这个命令将某个远程主机的更新全部取回本地
    
    //如果只想取回特定分支的更新,可以指定分支名
    git fetch <远程主机名> <分支名>   //注意之间有空格
    //取回更新后,会返回一个FETCH_HEAD ,指的是某个branch在服务器上的最新状态
    //我们可以在本地通过它查看刚取回的更新信息:
    git log -p FETCH_HEAD 
    //之后合并到本地的代码仓,需要实用merge 命令
    git merge FETCH_HEAD
    
    git merge :合并分支
    #合并步骤:
    //进入要合并的分支(如开发分支dev 合并到master,则进入master目录)
    git checkout master
    git pull
    //查看所有分支是否都pull下来了
    git branch -a
    //使用merge合并开发分支
    git merge 分支名
    //有冲突的话,通过IDE解决冲突,解决后,将冲突文件提交暂存区
    git add 冲突文件
    //提交merge之后的结果
    git commit -m "merge develop"
    //本地仓库代码提交远程仓库
    git push
    
    git push:使用本地提交更新远程分支
    //git push命令使远程存储库分支能够接收本地分支提交。
    //当本地存储库领先于(更多更新)远程存储库时,我们使用此命令。它使远程存储库与本地存储库中的新更改保持同步。
    
    //将本地当前分支 推送到 与本地当前分支同名的远程分支上
    git push    
    
    //将本地当前分支 推送到 与本地当前分支同名的远程分支上:
    git push origin branch-name
    
    //将本地当前分支 推送到 远程指定分支上(注意:pull是远程在前本地在后,push相反)
    git push origin <本地分支名>:<远程分支名>
    

    将本地分支与远程同名分支相关联

    git push --set-upstream origin <本地分支名>
    或者
    //创建远程同名分支并关联
    #git push -u origin <本地分支名>
    //创建/修改关联关系:指定分支对应关系
    #git push -u origin <本地分支名>:<远程分支名>
    
    //git push操作错误提示
    //https://blog.csdn.net/Relinane/article/details/131502462
    

    相关文章

      网友评论

          本文标题:git常用指令,干货整理

          本文链接:https://www.haomeiwen.com/subject/lflsfjtx.html