git基础命令

2018-08-07  本文已影响0人  SSS_ruby

git基础命令

git clone remote-address,克隆目标源码(可以选择克隆ssh或http两种方式)

git clone remote-address new-project 自定义项目名字

git status 查看暂存区状态,可以查看本地修改了那些内容,并且也可以查看到提交的信息及状态 

git diff test 查看test分支修改的内容(如果直接git diff 则查看全部修改的内容)

git branch 查看本地分支

git banch test 新建test分支

git branch -d test 删除test分支

git branch -D test 强制删除某分支(分支未被合并的情况下)

git checkout test 切换到test分支(如果本地没有的话,就去远程仓库去寻找test分支)

git checkout -b test 新建一个test分支并切换到test分支

git remote 查看仓库

git config -l 查看git配置

git config -e 修改git配置

git add test.txt 添加test.txt文件,如果改为“.”则全部提交

如果git add test.txt后发现不想提交test.txt文件了则可以git reset HEAD test.txt把test.txt文件从暂存区取出来

git commit test.txt -m 'update_test' 提交test.txt(如果改为“.”则全部提交),并打上备注“update_test”

git push origin branch:branch  其中origin表示远程仓库的地址(origin表示默认的远程仓库地址)第一个branch表示本地的branch第二个表示要推送到远程的branch里面去 如果写为git push origin  :branch 则表示将一个空的东西推送过去,也就是删除远程的branch分支。

git pull 表示下载并合并到本地是git fecth 和 git merge 的合体

如果 git pull 后想在以前的分支上面继续工作,则在以前的分支下面使用git merge master(其中要在master分支下面git pull)

git log 查看git日志

如果git commit后悔了后则可以git log 查看log里面想要恢复到那个状态链接,git reset (接上对应的链接)

如果遇到特殊情况,比如我今天修改了一些文件commit了之后,第二天突然发现昨天的代码有问题,可是我仍然在该分支上面做了一些修改,并且已经commit了,也就是说,我并不想要昨天修改的代码提交上去,只希望今天修改的代码提交上去,此时我们就需要用到git cherry-pick命令。过程是:1.git log 找到不想提交的请求的前面一个历史记录(也就是把这个历史记录当做基础副本)。2.git reset 刚才的历史记录(回到这个基础上此时就是相当于你什么都没做)。3.git log 再在日志中找到你想提交的历史记录并复制。4.git cherry-pick 历史记录 。此时不想提交的那些代码就不会出现在工作空间里面了。cherry-pick 的命令只会恢复你reset对应的历史记录提交时候的那一部分代码,并不会全部恢复。

当你在本地做了一些修改,并且向pull时,git会提示你请先提交合并才能pull,但是有时我们并不想合并这些代码,此时怎么办呢,那么git stash就可以了 他可以暂存到一个缓冲区 。git stash pop 可以从缓冲区拿出我们stash进去的文件

上一篇下一篇

猜你喜欢

热点阅读