1.初始化本地代码至远程仓库
git init
git status//查看仓库状态
git add . //把文件添加到仓库
git commit -m "add all files" //把文件放到仓库
git remote add origin远程仓库位置
git remote -v
git pull origin master --allow-unrelated-histories //拉取
git push origin master// 推送
2.常用基本命令
检查状态 – git status
它反馈给我们仓库当前状态的信息:是否为最新代码,有什么更新等等
暂存 – git add
Git有个概念叫“暂存区“,你可以把它看成一块空白的画布,包裹着所有你可能会提交的变动。它一开始是空的,可以通过 git add 命令添加内容,最后使用 git commit 提交(创建一个快照)
例如:git add -A | git add hello.java
提交 – git commit
一次提交代表着我们的仓库到了一个新的状态,就像是一个快照,允许我们像使用时光机一样回到之前的某个时间点。
例如:git commit -m "Initial commit.”
链接远程仓库 – git remote add
例如:git remote add originhttps://github.com/igeekbar/awesome-project.git
上传到服务器 – git push
把本地的提交传送到服务器的动作叫做push。每次我们要提交修改到服务器上时,都会使用到git push。
git push命令有两个参数,远程仓库的名字,以及分支的名字
例如: git push origin master (origin仓库名称 master分支名称)
克隆仓库 – git clone
例如: git clonehttps://github.com/igeekbar/awesome-project.git 克隆远程地址的项目到本地
从服务器上获得修改 – git pull
如果你更新了远程仓库上的内容,其他人可以通过git pull命令拉取你的变动
例如:git pull origin master origin仓库名称 master分支名称
创建新分支 – git branch
每一个仓库的默认分支都叫master, 创建新分支可以用git branch <name>命令:
切换分支 – git checkout
使用git branch,可以查看分支状态:
* 号表示当前活跃分支为master,现在我们想在新分支上开发新的特性,使用git checkout切换分支。有一个参数表示要切换到的分支。
合并分支 – git merge
例如: 1. 在amazing_new_feature分支add.commit代码
2.切换分支到master
3.合并分支git merge amazing_new_feature
4.删除分支amazing_new_feature
5.git branch -d amazing_new_feature
提交历史 - git log
查看历史提交详情 - git show [commit]
每次提交都有一个标识id,查看所有历史提交和他们的id,可以使用 git log:
例如:git show [commit]: commit为git log查看的提交的id。
回滚某个文件到之前的版本 - git checkout [commit] 文件名的本地全路径
例如:git checkout c0afa93 /Users/fyq/IdeaProjects/people-mall/people-mall- party/src/main/java/com/people/mall/party/PeopleMallPartyApp.java
贮藏 - git stash
现在你想切换分支,但是你还不想提交你正在进行中的工作;所以你储藏这些变更。为了往堆栈推送一个新的储藏。
查看贮藏列表 - git stash list
这时,你可以方便地切换到其他分支工作;你的变更都保存在栈上。要查看现有的储藏
弹出贮藏栈 - git stash apply stash@{0}
你可以重新应用你刚刚实施的储藏,所采用的命令就是之前在原始的 stash 命令的帮助输出里提示的:git stash apply。如果你想应用更早的储藏,你可以通过名字指定它,像这样:git stash apply stash@{2}。如果你不指明,Git 默认使用最近的储藏并尝试应用它
删除贮藏 - git stash drop
恢复同时删除储存 - git stash pop
显示简单日志信息 - git log --pretty=oneline
回滚提交 - git commit --amend
如果你发现最新的一次提交忘记加入某个文件,或是信息输入的不正确,你可以通过 git commit --amend来改正,它会把最新的提交打回暂存区,并尝试重新提交。如果是更复杂的情况,比如不是最新的提交除了问题,你可以使用git revert [commit]。
3.复杂操作
将一个分支上已经提交的部分代码提交到另一个分支上
例如: dev >> master
dev中已经提交了代码 master需要部分dev中的代码
命令: git checkout --patch 要合并的分支名称 代码的在本地的绝对路径
例如 : git checkout --patch dev /Users/fyq/IdeaProjects/eagle/eagle-shop-service-impl/eagle-shop-service-member/src/main/resources/application.yml (修改自己的本地文件)
网友评论