2019-07-30 01:02:59 -04:00
|
|
|
|
---
|
|
|
|
|
type: howto, reference
|
|
|
|
|
---
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2020-04-24 08:10:16 -04:00
|
|
|
|
# Edit files through the command line
|
2015-06-25 11:45:37 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
When [working with Git from the command line](start-using-git.md), you will need to
|
|
|
|
|
use more than just the Git commands. There are several basic commands that you should
|
|
|
|
|
learn, in order to make full use of the command line.
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
## Start working on your project
|
2015-06-25 11:45:37 -04:00
|
|
|
|
|
2019-08-27 04:44:07 -04:00
|
|
|
|
To work on a Git project locally (from your own computer), with the command line,
|
2019-07-30 01:02:59 -04:00
|
|
|
|
first you will need to [clone (copy) it](start-using-git.md#clone-a-repository) to
|
|
|
|
|
your computer.
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
## Working with files on the command line
|
2015-06-30 15:45:21 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
This section has examples of some basic shell commands that you might find useful.
|
|
|
|
|
For more information, search the web for _bash commands_.
|
2018-06-12 03:51:11 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
Alternatively, you can edit files using your choice of editor (IDE), or the GitLab user
|
|
|
|
|
interface (not locally).
|
2018-06-12 03:51:11 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
### Common commands
|
2018-06-12 03:51:11 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
The list below is not exhaustive, but contains many of the most commonly used commands.
|
2018-06-12 03:51:11 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
| Command | Description |
|
|
|
|
|
|--------------------------------|---------------------------------------------|
|
|
|
|
|
| `cd NAME-OF-DIRECTORY` | Go into a directory to work in it |
|
|
|
|
|
| `cd ..` | Go back one directory |
|
|
|
|
|
| `ls` | List what’s in the current directory |
|
|
|
|
|
| `ls a*` | List what’s in the current directory that starts with `a` |
|
|
|
|
|
| `ls *.md` | List what’s in the current directory that ends with `.md` |
|
|
|
|
|
| `mkdir NAME-OF-YOUR-DIRECTORY` | Create a new directory |
|
|
|
|
|
| `cat README.md` | Display the contents of a [text file you created previously](#create-a-text-file-in-the-current-directory) |
|
|
|
|
|
| `pwd` | Show the current directory |
|
|
|
|
|
| `clear` | Clear the shell window |
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
### Create a text file in the current directory
|
2015-06-30 15:45:21 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
To create a text file from the command line, for example `README.md`, follow these
|
|
|
|
|
steps:
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2020-03-23 23:09:28 -04:00
|
|
|
|
```shell
|
2015-06-30 15:45:21 -04:00
|
|
|
|
touch README.md
|
|
|
|
|
nano README.md
|
|
|
|
|
#### ADD YOUR INFORMATION
|
|
|
|
|
#### Press: control + X
|
|
|
|
|
#### Type: Y
|
|
|
|
|
#### Press: enter
|
|
|
|
|
```
|
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
### Remove a file or directory
|
2018-06-12 03:51:11 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
It is easy to delete (remove) a file or directory, but be careful:
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2019-06-27 13:53:48 -04:00
|
|
|
|
DANGER: **Danger:**
|
2019-07-30 01:02:59 -04:00
|
|
|
|
This will **permanently** delete a file.
|
2019-06-27 13:53:48 -04:00
|
|
|
|
|
2020-03-23 23:09:28 -04:00
|
|
|
|
```shell
|
2015-06-30 15:45:21 -04:00
|
|
|
|
rm NAME-OF-FILE
|
|
|
|
|
```
|
|
|
|
|
|
2019-06-27 13:53:48 -04:00
|
|
|
|
DANGER: **Danger:**
|
2019-07-30 01:02:59 -04:00
|
|
|
|
This will **permanently** delete a directory and **all** of its contents.
|
2019-06-27 13:53:48 -04:00
|
|
|
|
|
2020-03-23 23:09:28 -04:00
|
|
|
|
```shell
|
2018-03-27 10:12:20 -04:00
|
|
|
|
rm -r NAME-OF-DIRECTORY
|
2015-06-30 15:45:21 -04:00
|
|
|
|
```
|
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
### View and Execute commands from history
|
|
|
|
|
|
|
|
|
|
You can view the history of all the commands you executed from the command line,
|
|
|
|
|
and then execute any of them again, if needed.
|
|
|
|
|
|
|
|
|
|
First, list the commands you executed previously:
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2020-03-23 23:09:28 -04:00
|
|
|
|
```shell
|
2015-06-30 15:45:21 -04:00
|
|
|
|
history
|
|
|
|
|
```
|
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
Then, choose a command from the list and check the number next to the command (`123`,
|
|
|
|
|
for example) . Execute the same full command with:
|
2018-06-12 03:51:11 -04:00
|
|
|
|
|
2020-03-23 23:09:28 -04:00
|
|
|
|
```shell
|
2018-06-12 03:51:11 -04:00
|
|
|
|
!123
|
|
|
|
|
```
|
|
|
|
|
|
2015-07-09 18:33:42 -04:00
|
|
|
|
### Carry out commands for which the account you are using lacks authority
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
Not all commands can be executed from a basic user account on a computer, you may
|
|
|
|
|
need administrator's rights to execute commands that affect the system, or try to access
|
|
|
|
|
protected data, for example. You can use `sudo` to execute these commands, but you
|
|
|
|
|
will likely be asked for an administrator password.
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2020-03-23 23:09:28 -04:00
|
|
|
|
```shell
|
2019-07-30 01:02:59 -04:00
|
|
|
|
sudo RESTRICTED-COMMAND
|
2015-06-30 15:45:21 -04:00
|
|
|
|
```
|
2015-08-26 00:57:10 -04:00
|
|
|
|
|
2019-06-27 13:53:48 -04:00
|
|
|
|
CAUTION: **Caution:**
|
|
|
|
|
Be careful of the commands you run with `sudo`. Certain commands may cause
|
2019-07-30 01:02:59 -04:00
|
|
|
|
damage to your data or system.
|
2019-06-27 13:53:48 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
## Sample Git taskflow
|
2016-10-10 16:18:06 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
If you are completely new to Git, looking through some [sample taskflows](https://rogerdudler.github.io/git-guide/)
|
|
|
|
|
will help you understand the best practices for using these commands as you work.
|
2018-06-12 03:51:11 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
<!-- ## Troubleshooting
|
2019-07-12 04:09:23 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
Include any troubleshooting steps that you can foresee. If you know beforehand what issues
|
|
|
|
|
one might have when setting this up, or when something is changed, or on upgrading, it's
|
|
|
|
|
important to describe those, too. Think of things that may go wrong and include them here.
|
|
|
|
|
This is important to minimize requests for support, and to avoid doc comments with
|
|
|
|
|
questions that you know someone might ask.
|
2018-09-14 19:13:39 -04:00
|
|
|
|
|
2019-07-30 01:02:59 -04:00
|
|
|
|
Each scenario can be a third-level heading, e.g. `### Getting error message X`.
|
|
|
|
|
If you have none to add when creating a doc, leave this section in place
|
|
|
|
|
but commented out to help encourage others to add to it in the future. -->
|