`

git命令

git 
阅读更多

 

git 基本信息

--设置全局用户名
git config --global user.name "HanShuliang" //设置用户名 
git config --global user.email "13241153187@163.com" //设置邮箱

--查看环境配置
git config --list

--配置文件保存在
~/.gitconfig

---初始化一个空仓库
git init

---查看仓库repository状态
git status
git status -a 简要信息

---提交文件,参考下面图片
git add 文件名
git commit -m '将文件提交到本地仓库'

  


 

 

查看文件变化内容

   要随时掌握工作区的状态,使用git status命令

--如果status,告诉你有文件被修改,查看文件 变化内容
git diff

--执行add之后 查看临时空间与版本库的变化
git diff --staged
git diff --cached

--工作区和版本库里面最新版本的区别:
git diff HEAD -- readme.tx

 

 

回退

 

 --场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令
 git checkout -- file。

 --场景2:当你不但改乱了工作区某个文件的内容,还添加(add)到了暂存区时,想丢弃修改,分两步,第一步用命令
 git reset HEAD file  --就回到了场景1,第二步按场景1操作。
 
 --场景3:已经提交(commit)了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库
 --穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本
 --命令显示从最近到最远的提交日志
git log
--一行显示
git log --pretty=oneline

--HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id
git reset --hard 3628164

--上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100
git reset --hard HEAD^

--要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本,记录操作历史

--这个比较重要,将本地分支强行覆盖远程分之
git push --force

 

 

 

 git从远程下载项目到本地

 

git clone http://XXX.XXX/sq-group/XXX.git

 

项目上传到远程

--进入项目文件夹,初始化本地git:
git init

--在远程githup上创建一个项目,和本地项目名称一样

--创建一个远程仓库别名在本地:
git remote add origin git@gitlab.58corp.com:58finance_loan/clearing-share.git

--内容加到临时空间:
git add 提交文件(添加一个文件.gitignore,用来去掉不需要提交文件,见附件)

--提交到本地仓库:
git commit -m "first commit"

--添加到远程仓库:
git push -u origin master

 

 

  远程仓库

--创建远程仓库别名:
git remote add 别名  url

--查看远程仓库:
git remote

--删除:
git remote remove 别名
 

 git 分之操作

 

--------------------基本---------------------
--查看分支:
git branch

--查看远程分之:
git branch -a

--创建分支:
git branch <name>

--切换分支:
git checkout <name>

--创建+切换分支:
git checkout -b <name>

--合并某分支到当前分支:
git merge <name>

--查看冲突文件:
git status

-- 查看分支历史(从哪个分支拉取过来)
git reflog
--用远程文件覆盖本地:
git checkout --theirs -- src/main/java/com/bj58/finance/web/controllers/quickapply/QuickApplyController.java

--用保留本地分支,剔除掉merge的内容:
git checkout --ours -- 路径

--解决冲突后,需要添加文件修改:
git add

--删除分支:
git branch -d <name>

------------------推送分之-----------------
------查看远程库信息,使用:
git remote -v
		origin  git@github.com:michaelliao/learngit.git (fetch)
		origin  git@github.com:michaelliao/learngit.git (push)
--上面显示了可以抓取和推送的origin的地址。如果没有推送权限,就看不到push的地址
--push 分之时 可用origin来代替地址
  
--------git把本地创建的分之推送到remote,如果存在则合并,不存在创建
--方法1:
git push [远程仓库地址或者别名(origin)] 本地分支名称 

--方法2:
git push [远程仓库地址或者别名(origin)] 本地分支名称:远程仓库分之名


-----如果:左边的本地分支为空,那么将删除:右边的远程的分支。
---删除远程分之:
git push [远程仓库地址或者别名(origin)] (这里是空格):要删除的远程分之

----------------------获得远程分之------------------------------
--git 从获得远程仓库分之/代码
--方法1:
git pull [远程仓库地址或者别名(origin)] 远程分支名称
--方法2:
git fetch [远程仓库地址或者别名(origin)] 远程分支名称:本地分支名称(可不写)

--将远程分之信息全部同步到本地
git fetch

 

合并其它分之内容到我的分之

 

git cherry-pick 3761e9fd2b7e3995b16fee062859c514d1d75b8e

 

临时切换分之

 

--将分之内容,临时储藏起来
git stash 

--查看临时储存的内容
git stash list

--恢复后,stash内容并不删除
git stash apply

--删除
git stash drop

--恢复的同时把stash内容也删了
git stash pop

 

 

 

git简介 教程

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137396287703354d8c6c01c904c7d9ff056ae23da865a000/

  • 大小: 16.3 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics