$ git clone http://SanJieJiYuanWelcomeYou.git
$ git clone ssh://git@SanJieJiYuanWelcomeYou.git
$ git pull
或者
$ git fetch origin master
$ git add .
或某个具体文件:
$ git add "readme.md"
回退git add文件:
# 回退所有文件
git reset HEAD
# 回退部分文件,将file退回到unstage区
git reset HEAD file
$ git status
$ git status -s
-m
后为当次提交的备注信息:$ git commit -m "1.0.0"
$ git push http://SanJieJiYuanWelcomeYou.git
在新建仓库时,如果在 Gitee 平台仓库上已经存在 readme 或其他文件,在提交时可能会存在冲突,这时用户需要选择的是保留线上的文件或者舍弃线上的文件,如果您舍弃线上的文件,则在推送时选择强制推送,强制推送需要执行下面的命令(默认不推荐该行为):
$ git push origin master -f
如果您选择保留线上的 readme 文件,则需要先执行:
$ git pull origin master
$ git l
# 查看一下现在的分支状态,
# 星号(*)表示当前所在分支
git branch
# 查看全部分支
git branch -a
# 查看状态:
$ git status
# 切换本地分支
git checkout [分支名称]
# 新建本地分支 feat-segmenter,执行该指令后,
#会在本地创建一个新分支,该分支是从当前分支上检出的,
#所以所有文件内容都和当前分支一模一样
git checkout -b feat-segmenter
# 从远程仓库里拉取一条本地不存在的分支
git checkout -b 本地分支名 origin/远程分支名
# 设置本地分支对应的远程分支 Set upstream when pushing to remote
git push -u origin feat-segmenter
git push --set-upstream origin 分支名
git push <远程主机名> <本地分支名>:<远程分支名>
git push -u origin dev:release/caigou_v1.0
git push -u origin curb_segment:feat-segmenter
# 可以在本地分支在第一次push时设置远程分支。可以通过选项-u或——set-upstream为每个更新或推送的分支设置远程引用。
# Set upstream without pushing it
# with option -u / --set-upstream-to
git branch -u origin/feat-segmenter
git branch --set-upstream-to=origin/feat-segmenter
# 查看是否切换
git config --list
# 取消分支设置
git branch --unset-upstream [<branchname>]
把新建的本地分支push到远程服务器,远程分支与本地分支同名:
$ git push origin 分支名:分支名
git config --global user.name "qianchengjun"
git config --global user.email "qianchengjun@faw.com.cn"
git config --list
# 配置完要初始化以下
git init
ssh-keygen
cat ~/.ssh/id_rsa.pub
# 简单方式,推送一个空分支到远程分支,其实就相当于删除远程分支:
$ git push origin :localbranch
# 或者
$ git push origin --delete localbranch
这两种方式都可以删除指定的远程分支
// 删除本地分支,不能删除当前所在分支,必须先切换出去再删除
git branch -d [分支名称]
git rm 与 git reset的区别
命令 | 用途 |
---|---|
git rm | 用于从工作区和暂存区中删除文件,删除暂存区和分支上的文件,同时工作区也不需要 |
git rm --cached file_path | 删除暂存区或分支上的文件, 但工作区需要使用, 只是不希望被版本控制(适用于已经被git add,但是又想撤销的情况) |
git reset | 用于将当前HEAD复位到指定状态, 回退暂存区里的文件。一般用于撤消之前的一些操作(如:git add,git commit等)。 |
git stash
该命令会保存当前工作进度,会把暂存区和工作区的改动保存到一个未完结变更的堆栈中;运行git status
后,会发现当前分支是一个干净的工作区,没有任何改动。
git stash
是本地的,不会上传到服务器上;- 可以通过使用
git stash save 'message...'
可以添加一些注释。
git help stash
查看定义及用法
GIT-STASH(1) Git Manual GIT-STASH(1)
NAME
# 能够将所有未提交的修改(工作区和暂存区)保存至堆栈中,用于后续恢复当前工作目录。
git-stash - Stash the changes in a dirty working directory away
SYNOPSIS
# 查看当前stash中的内容
git stash list [<options>]
# 查看堆栈中最新保存的stash和当前目录的差异。
git stash show [<stash>]
# 从堆栈中移除某个指定的stash
git stash drop [-q|--quiet] [<stash>]
# git stash pop 将当前stash中的内容弹出,并应用到当前分支对应的工作目录上。
git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]
# 恢复指定的进度到工作区
git stash pop stash@[stash_id]
# 从最新的stash创建分支。
git stash branch <branchname> [<stash>]
git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]
[-u|--include-untracked] [-a|--all] [-m|--message <message>]
[--] [<pathspec>...]]
# 清除堆栈中的所有 内容
git stash clear
git stash create [<message>]
git stash store [-m|--message <message>] [-q|--quiet] <commit>
DESCRIPTION
当您想记录工作目录和索引的当前状态时,请使用 git stash,但是想要回到一个干净的工作目录。该命令会保存您的本地修改并恢复工作目录以匹配 HEAD 提交。
这个命令隐藏的修改可以用 git stash list 列出,用 git 检查stash 显示,并使用 git stash apply 恢复(可能在不同的提交之上)。调用不带任何参数的 git stash 等同于 git stash push。默认情况下,存储被列为“WIP on branchname ...”,但您可以在命令行上给出更具描述性的消息创建一个。
您创建的最新存储存储在 refs/stash 中;在此的 reflog 中发现了较旧的 stash引用并且可以使用通常的 reflog 语法命名(例如 stash@{0} 是最近的创建 stash,stash@{1} 是它之前的那个,stash@{2.hours.ago} 也是可能的)。藏匿处可能也可以通过仅指定存储索引来引用(例如,整数 n 等价于藏匿@{n})。