What are the steps involved in making code changes and committing them to a separate branch for a PHP framework on GitHub?

Issue: There is a bug in the PHP framework that is causing incorrect data to be displayed on the user profile page. To fix this, we need to update the query that retrieves the user data from the database. Code snippet:

```php
// Retrieve user data from the database
$user_id = $_SESSION['user_id'];
$query = "SELECT * FROM users WHERE id = :user_id";
$stmt = $pdo->prepare($query);
$stmt->bindParam(':user_id', $user_id, PDO::PARAM_INT);
$stmt->execute();
$user_data = $stmt->fetch(PDO::FETCH_ASSOC);

// Display user data on the profile page
echo "Username: " . $user_data['username'];
echo "Email: " . $user_data['email'];
echo "Bio: " . $user_data['bio'];
```

After implementing the fix, the changes can be committed to a separate branch on GitHub by following these steps:
1. Create a new branch for the code changes using the command `git checkout -b new-feature-branch`.
2. Add the modified files to the staging area using `git add <file_name>` or `git add .` to add all files.
3. Commit the changes to the new branch using `git commit -m "Fix user data retrieval query"`.
4. Push the changes to the remote repository on GitHub using `git push origin new-feature-branch`.
5. Create a pull request on GitHub to merge the changes into the main branch after reviewing and testing the code.