git 日常 常用命令

初始化git

git init

 


第一次拉代码:

方式1:git clone 

git clone https://git.oschina.net/*****.git (https远程仓库地址)

方式2:

1)git add remote origin 仓库地址(先添加远程仓库remote)
2)git pull origin (获取远程仓库所有分支)
3)git pull origin master(拉取默认分支master代码)

 

远程仓库remote操作:

1、要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用:

git remote add team(仓库名.默认origin) https://git.oschina.net/*****.git(现在可以用字串team 指代对应的仓库地址了)
git pull team master

2、列出已经存在的仓库(只显示仓库别名,不显示详细地址)

git remote

3、列出仓库及详细信息,在每一个名字后面列出其远程url

git remote -v | --verbose

4、重命名仓库名称

git remote rename <old> <new>

 5、修改远程仓库地址

a).修改命令
git remote set-url origin [url]

b).先删后加
git remote rm origin
git remote add origin [url]

c).直接修改config文件

  

提交代码:

git add .
git commit -m"first commit"
git push team(仓库名) master(分之名)

 

分之(branch)操作:

git branch    查看本地分之
git branch -r    列出远程分支
git branch -a    查看本地+远程分支
git branch new_branch    创建分之(不进行切换)
git checkout -b new_branch    创建并切换分之
git checkout version2(分之名) 切换分之
git checkout .//或者git checkout a.txt    放弃本地工作区文件的修改
git checkout -b new_branch origin/branch-name    
从远程分之上创建本地分支并切换分之(远程分之)在本地创建和远程分支对应的分支(本地和远程分支的名称最好一致;)
git branch -m | -M oldbranch newbranch
重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名。
git branch -d | -D branchname 删除branchname分支

删除远程branchname分支
git branch -d -r origin/branchname
git push origin :branch-name

 

 暂存

git stash // 暂存当前状态
git stash drop [<stash>] 删除某一个进度,默认删除最新进度 
git stash apply [--index] [<stash>] 不删除已恢复的进度,其他同git stash pop 
git stash clear 删除所有进度 
git stash branch <branchname> <stash> 基于进度创建分支

 

文件对比 

git diff filepath           工作区与暂存区比较
git diff HEAD filepath      工作区与HEAD ( 当前工作分支) 比较
git diff branchName filepath   当前分支的文件与branchName 分支的文件进行比较
git diff commitId filepath    与某一次提交进行比较

 

查看修改文件的状态

git status 查看当前修改状态(列出所有修改)

 

日志,,,,,找到要回滚的commitID

git log                       # 查看修改日志(所有)
git log --oneline -n5           # 显示最近5次提交日志

 

回滚

git log <filename>                  # 查看指定文件的历史版本
git checkout <commitID> <filename>     # 回滚到指定commitID
git revert commitID

 

删除某次提交

git rebase -i "commit id"^        #需要注意最后的^号,意思是commit id的前一次提交(在编辑框中删除相关commit,然后保存退出(如果遇到冲突需要先解决冲突)!)
git push origin master -f

 

删除最后一次远程提交

 

方式一:使用revert
git revert HEAD
git push origin master

方式二:使用reset
git reset --hard HEAD^
git push origin master -f

二者区别:
revert是放弃指定提交的修改,但是会生成一次新的提交,需要填写提交注释,以前的历史记录都在;
reset是指将HEAD指针指到指定提交,历史记录中不会出现放弃的提交记录。

 

添加并生成ssh

git bash下输入一下命令
①   cd ~/.ssh/    【如果没有对应的文件夹,则执行  mkdir  ./.ssh】

②  git config --global user.name "janice_jia"

③  git config --global user.email "janice_jia@qq.com"

④  ssh-keygen -t rsa -C "janice_jia@qq.com"
出现提示一路回车,,,

  最后:找到C:\Users\xb12369\.ssh 目录,里面有两个文件:id_rsa和id_rsa.pub
  复制id_rsa.pub里的内容设置ssh

 

 

 

 

posted @ 2018-03-21 15:32  janice_jia  阅读(344)  评论(0编辑  收藏  举报