File Operations Guide
This guide covers how to upload, download, and manage files using GitHub Commander's FTP-like interface.
Overview
GitHub Commander provides a dual-pane interface for file operations:
- GitHub File Browser - Browse repository contents on GitHub
- Local File Browser - Browse local files on your system
Files can be transferred between panes using drag-and-drop or context menus.
Uploading Files
Method 1: Drag and Drop
- Select a repository
- Navigate to the Local File Browser
- Select the file(s) you want to upload
- Drag and drop to the GitHub File Browser
- Enter a commit message
- Click "Upload"
- Select a repository
- Navigate to the Local File Browser
- Right-click the file you want to upload
- Select "Upload to GitHub"
- Choose the destination path in the repository
- Enter a commit message
- Click "Upload"
Batch Upload
- Select multiple files in the Local File Browser
- Drag and drop or use context menu
- All selected files will be uploaded
- Enter a commit message for the batch
- Click "Upload"
Upload Options
- Destination Path - Where to place the file in the repository
- Commit Message - Description of the changes
- Branch - Which branch to commit to (default: main)
- Overwrite - Replace existing files (default: prompt)
Upload Progress
- Progress bar shows upload status
- Success/failure notifications appear
- Failed uploads can be retried
Downloading Files
Method 1: Drag and Drop
- Select a repository
- Navigate to the GitHub File Browser
- Select the file(s) you want to download
- Drag and drop to the Local File Browser
- Choose the destination folder
- Click "Download"
- Navigate to the GitHub File Browser
- Right-click the file you want to download
- Select "Download"
- Choose the destination folder
- Click "Download"
Batch Download
- Select multiple files in the GitHub File Browser
- Drag and drop or use context menu
- Choose destination folder
- All selected files will be downloaded
Download Options
- Destination Folder - Where to save files locally
- Preserve Structure - Maintain directory structure
- Overwrite - Replace existing local files (default: prompt)
Deleting Files
Deleting from Repository
- Navigate to the GitHub File Browser
- Right-click the file you want to delete
- Select "Delete"
- Confirm the deletion
- Enter a commit message
- Click "Delete"
Warning: This permanently deletes the file from the repository. The deletion can be undone by reverting the commit.
Batch Delete
- Select multiple files
- Right-click and select "Delete"
- Confirm deletion
- Enter commit message
- Click "Delete"
Creating Files
Create New File in Repository
- Navigate to the GitHub File Browser
- Right-click in the file list
- Select "New File"
- Enter the file name
- The file editor will open
- Enter file content
- Click "Save"
- Enter a commit message
- Click "Commit"
Create New Folder
- Navigate to the GitHub File Browser
- Right-click in the file list
- Select "New Folder"
- Enter the folder name
- Click "Create"
Renaming Files and Folders
Rename File
- Right-click the file
- Select "Rename"
- Enter the new name
- Click "Rename"
- Enter a commit message
- Click "Commit"
Rename Folder
- Right-click the folder
- Select "Rename"
- Enter the new name
- Click "Rename"
- Enter a commit message
- Click "Commit"
Viewing Files
View File Content
- Double-click a file in either browser
- The file will open in the built-in viewer
- Supported formats:
- Text files (.txt, .md, .py, .js, etc.)
- Images (.png, .jpg, .gif, .svg)
- Code files with syntax highlighting
Edit File
- Double-click a file to open it
- Make changes in the editor
- Click "Save"
- Enter a commit message
- Click "Commit"
Viewing File Details
Right-click a file and select "Properties" to see:
- File size
- Last modified date
- File type
- SHA (for repository files)
- Author (for repository files)
Comparing Files
Compare Local and Remote
- Select a file in the Local File Browser
- Right-click and select "Compare with Remote"
- Differences will be highlighted
- Choose which changes to keep
File Permissions
Viewing Permissions
File permissions are displayed in the file list:
r - Read
w - Write
x - Execute
GitHub doesn't support executable permissions for most file types.
Large Files
Large File Warning
GitHub has a 100 MB file size limit. Attempting to upload larger files will:
- Show a warning
- Prevent the upload
- Suggest using Git LFS (Large File Storage)
Using Git LFS
For files larger than 100 MB:
- Install Git LFS on your system
- Initialize LFS in the repository
- Track large files with LFS
- Upload normally - LFS handles the rest
Binary Files
Uploading Binary Files
Binary files (images, executables, etc.) can be uploaded:
- Select the binary file
- Upload using drag-and-drop or context menu
- The file will be uploaded in binary mode
Viewing Binary Files
Binary files can be viewed as:
- Hex dump
- Raw binary
- External application (if configured)
Hidden Files
Showing Hidden Files
- Go to Settings
- Enable "Show Hidden Files"
- Hidden files (starting with
.) will be visible
Hidden files include:
.gitignore
.env
- Configuration files
- System files
File Search
Searching in Local Browser
- Use the search box in the Local File Browser
- Enter file name or pattern
- Results filter in real-time
Searching in GitHub Browser
- Use the search box in the GitHub File Browser
- Enter file name or pattern
- Results filter in real-time
Advanced Search
Use wildcards for pattern matching:
*.py - All Python files
test_* - Files starting with "test_"
*.md - All Markdown files
Next Steps
After mastering file operations, explore: